TalkingData这4年来在移动统计剖析上投入巨大,便是为了去填平诸多的坑。
但是很多人是不到黄河心不去世,以是我鼓励大家都来做做统计剖析平台,一起来踩坑,“望山跑去世马”,只有跑断几条腿,大家才会有觉得。

为了避免大家亏损往后怪我言之不预,以是本日重点聊聊移动统计剖析的坑。

第一个大坑:设备唯一性识别

html5图片放点移动统计剖析 React
(图片来自网络侵删)

智能设备的唯一性识别是所有移动统计剖析的根本,唯一性识别不准,就谈不上数据剖析。
客户在接入TalkingData的时候一样平常会先对数据,由于设备唯一性识别不准确,有时候数据差异能达到20%以上。

在PC时期,PC的唯一性可以通过一些硬件id(比如硬盘、CPU、网卡Mac等)来标识,技能相对成熟,识别也比较稳定。
但是在智好手机上,情形就很不一样了:

一是对用户隐私和数据安全有更多管控,有些数据无法获取。
尤其是苹果系统,对此更加严格,其识别方法就经历过UUID、UDID、WIFI MAC、Open UDID、IDFA、IDFV平分歧阶段的安全策略调度,不同机型不同系统版本须要利用不同的方法,ID持久化的手段也不同。

二是海内安卓手机生态系统非常碎片化,超过2万款的不同安卓系统,在底层接口上或多或少具有一定的差异性,从来没有一个统一规范或绝对保险的信息获取手段,都须要有针对性的进行适配。
大概你不知道,记录一个原生ID须要综合利用至少4种办法,持久化一个Html5的ID更须要超过6种办法。
这里须要的不仅是履历的积累,还须要耐心。

TalkingData经由和2万多款系统的艰巨斗争,逐步建立起相对完善的智能设备TDID(TalkingData Device ID)识别体系,在设备识别准确率上有极为精良的表现。
当然,随着智能设备的品类和款型不断丰富,这个斗争还会一贯持续下去,我们也会坚持投入资源,以坚持高质量的设备识别。

第二个大坑:数据标准化

数据标准化办理的是数据质量的问题,数据标准化程度越高,数据剖析结果就越准确,客户对付数据的理解也就越深入。
但是在中国,数据标准化是一个比较高的门槛,须要投入大量资源做很多辛劳的“接地气”的事情,并非所有公司(包括BAT)都有能力和意愿持续投入资源在这样苦逼的事情上。

比如手机机型是数据剖析的一个比较主要的维度,机型数据能够反响用户的一些属性特色,比如年事、性别、消费能力等等。
但是对付智好手机(尤其是安卓手机)来说,识别机型绝不是一件随意马虎的事情,纵然是有一些巨子,机型数据剖析里面最大比例的也是“其他设备”。
先不说刷机的存在让手机常常面孔全非,纵然是同一款手机不同出厂批次,也会涌现较大的系统差异。
仅仅从系统配置属性里面拿到制造商和机型两个字段远远不足,再加上更多的附加系统配置属性也稍稍不敷,有的系统要根据手机内存的大小来进一步赞助机型判断,有的系统还须要一定的技能手段获取核心芯片类型。
TalkingData目前有一个团队专门在做机型的识别,已经建立了一个很大的机型匹配模型和数据库,在机型识别准确度上名列前茅。

再比如大家以为很大略的“运营商信息”,大部分公司可能直接截取系统配置信息里面的运营商字段即可,彷佛也没啥要做的。
但是我们网络的信息表明,纵然是“中国移动”这家运营商,就有超过200条的字符串对应,包括“中国移动”、“中国移动 Mobile”、“China Mobile”、“中国移动”、“China-Mobile”、“中国移动很”等等,千奇百怪,令人叹为不雅观止。
TalkingData为了数据的准确,针对类似的数据指标建立起了一套半自动化的处理流程,采取流式处理技能,在海量数据流转过程中,创造新的词条,就会提示干系的数据标准化职员。
因此可以相对实时、准确的完成数据洗濯事情。

还有,关于归属区域的数据,常规手段是通过IP地址来识别,于是大家都有了自己的IP地址和区域的映射表。
但是中国的情形大家都知道,网络环境是非常繁芜的,各省运营商从本钱考虑,常常修正途由策略,导致IP地址非常混乱,基于归属区域的数据剖析结果漏洞百出,经不起考虑。
比如你以为你的用户大部分在上海,但是归属地一查,居然甘肃占大头!

为理解决这个问题,TalkingData和多家数据做事商互助,建立了一套基于IP地址、位置、WIFI背景和用户行为剖析的归属地剖析系统,大大提升了归属地判断的准确度。
伙伴们再也不用担心找不准自己的用户了。

数据取不到是一方面,能取到但是有缺点是另一方面,比如一些老款手机有bug,常常断电重启了往后系统韶光就变成1950年,这须要在数据处理的时候进行洗濯。
诸如此类,举不胜举。

以是在TalkingData看来,“大数据”更多代表的是“大量的脏数据”,只有经由洗濯和标准化的数据,才有可能产生代价。
数据质量对他人算是可有可无,但对TalkingData却是生命线,纵然再苦逼我们必须去做,也必须做好。
我们在此投入很多资源,取得一些成绩,也在逐步开放能力给广大互助伙伴,让大家真正享受到大数据的红利。

第三个大坑:剖析算法

数据统计剖析中会用到各种数据挖掘的算法,比如预测收入和流失落,或者对自己的用户做人群画像(比如打兴趣标签)。

常日,大家以为架几台做事器,支配一个Spark,跑一个MLLib任务也就差不多可以做挖掘了。
对付刚起步的产品线的确如此,这时候数据量还比较小,怎么跑都能很快跑完,结果秒出,皆大欢畅。
但是随着产品的发展,用户数不断增大,数据样本也随着增长。
同时随着大家对数据需求的提升,须要刻画更加丰富的用户特性,于是样本特色维度也随之增长。
这两个成分,导致普通的机器学习算法越来越没法知足需求。

从算法繁芜度来说,传统算法的繁芜度与演习样本数(如SVM)或特色数量(如决策树)的关系是超线性关系。
有一些模型学习中用到的优化方法,如牛顿法,须要打算演习特色维度规模的海塞矩阵的逆矩阵及其乘法,其打算繁芜度为 O(n^3)。
从I/O花费上说,机器学习算法大部分都包含迭代,须要反复多次利用数据,而在处理大规模数据时,受硬件条件限定,演习数据集可能无法一次性全部加载到内存中,只能分批次从文件系统中读取,于是又带来巨大的存储I/O开销。

急剧膨胀的打算量和I/O花费,使得演习韶光变得越来越长,原来秒出的结果逐步变成分钟出,再变成小时出,乃至末了隔天才能出,越来越无法接管。
能增加硬件办理?实际上,硬件数量的扩充带来的打算效率的提升,大大掉队于数据量增长带来的打算量和I/O花费。
扩充硬件并不是最有效的方案,依然须要从算法优化上去办理——这里面既须要对算法本身有深刻理解,也须要具有数据领域干系的知识。
对付任何公司来说,必须要有一个有履历和积累的算法团队才能搞得定,资源和韶光都必须投入。

TalkingData的数据挖掘算法团队在移动大数据方面积累深厚,基于对算法和数据的理解,自主研发出高性能大规模机器学习算法框架,办理了打算繁芜度和资源花费的问题,纵然在2亿样本和300万维度的状况下,也能应对自若。

第四个大坑:本钱

不差钱不差人也不差韶光的土豪,请自动跳过本章节,避免摧残浪费蹂躏韶光。

小公司数据量小,统计剖析平台可以简陋些,但是再简陋也至少须要统计剖析功能。
先不说各种算法各种数据规范化,至少要有一个后台开拓吧?写写剖析逻辑,搞搞数据库,这是必须的。
其余1个数据运营职员少不了,要不然谁来定义剖析指标的观点和打算方法,谁来跟踪数据的变革,谁来写报告?末了这个别系须要界面吧?再简陋,1个前端做界面和掩护也是须要的,由于大家总是对数据充满好奇心,须要做各种解读,因此不断会有新界面的需求。
这样,至少3个人就牵扯进去了。
对付目前起步大概10个人旁边的小创业团队来说,3个人放在这上面,谁受得了?

对付大公司来说,投入几个人做个统计剖析平台彷佛也没什么。
但是别忘却了,大公司的数据量要赶过好几个量级,带来了打算量和繁芜度的超线性增长。
这时候不仅须要算法团队来研究算法的优化,也须要运维团队来方案更大规模的做事器集群。
大公司的产品,不支持全平台切实其实都不好意思说,安卓、 iOS、WindowsMobile这样的主流平台先不说,光是游戏就至少还有cocos2D、unity3D、ANE、Html5,于是有须要有专人去卖力不同平台客户真个数据统一和规范的事情。
这还不算完,公司大了,部门多了,要看数据的人也多了,有的人看新增、生动、留存,有的人看转化漏斗,有的人看渠道ROI……这么多的指标,总要有专门人归纳整理提炼掩护,兼职的大猫小猫两三只搞得过来吗?这还不说一些垂直行业须要更加深入的指标剖析和预测,比如移动游戏就须要剖析过关数据、游戏时长、升级数据、付费数据等等,还有繁芜的付费预测、流失落预测……这就牵扯到产品团队和运营团队的支持。
零零总总,做好一些统计剖析平台,须要投入的就至少包含一个数据算法团队、一个IT运维团队、一个客户端团队、一个数据运营团队、一个产品团队。
一个团队2-3个人,咱就准备15个人吧。
对付有高标准哀求的公司来说,还须要一些人做数据的标准化,一些人专门去谈第三方公司数据的引入(以提升自有数据的丰富性)……人数还会增加。
还没完,除了人力资源本钱和管理本钱,还要算上带宽、做事器、IDC租用等等,也要算上为了数据安全所须要的多机备份、多数据中央容灾等等…… 这绝不是一笔小投入了!

第五个大坑:数据的高效利用

末了的关键还在于,无论公司大小,纵然花了钱,也未必做得好。
而且,做出来一回事,用得好是其余一回事。
依样画葫芦很随意马虎,但是该下的功夫无论如何也省不了。

以前app开拓者只关注推广,重视下载量和安装量(纵然现在有一些app依然如此),后来逐步知道新增、日活、留存这些指标了。
但这还远远不足,如何通过这些数据来辅导产品的改进和运营的优化?

并不是搭个框架放点数据做些图表就叫风雅化运营,这些都须要有一套成熟的方法论的辅导。
从用户的获取,到用户进入运用往后产生生动,到用户对运用功能或做事产生黏性,到运用如何通过做事或功能获取收入,并通过为用户供应超过预期的做事来产生分享,从而进入第二次传播,影响新用户的获取。
这个循环中,每个环节都可能碰着大量问题。
通过数据的辅导,有助于我们创造问题并找出有针对性的办理方案。

TalkingData做事于6万开拓者和8万的移动运用,覆盖超过15亿智能设备,每天都有大量的客户交互和咨询,因此你碰着的问题,我们都不陌生。
TalkingData根据自己的履历以及业界的最佳运营实践,总结出AARRR(Acquisition、Activation、Retention、Revenue、Refer)运营模型,领悟到统计剖析产品线中,来辅导产品和运营。
你能想到的功能,我们已经有了,你想不到的功能,我们也有。

很小的时候就学过,“知易行难”。
空谈大话随意马虎,踏踏实实做出一件事情来很难。
TalkingData经历了这么多坑,才把统计剖析做出来,我们绝不希望小伙伴们还要经历一遍我们所经历的困难。
TalkingData也在创业中,深知创业困难,无暇他顾。
我们希望能够帮助大家尽可能的分担,让大家可以把全部热血和精力都投入到自己的焦点上,多增加一点成功的机会。

当然,依然想做统计剖析的朋友,欢迎来我司互换切磋,共同进步。

【后记】

末了要提到的是,有不少朋友认为TalkingData是数据工具公司。
实在从我们的产品线就可以看出来,我们因此数据而不是工具为核心。
我们致力于数据的研究,通过数据来改变企业做决定的办法,而工具只是数据的呈现。
如果大家以为自己有志于大数据领域,对大数据技能有激情亲切,对数据如何办理日常生活中的问题有好奇心,欢迎加入TalkingData大数据研发团队,我们这里有足够多的数据和技能来寻衅你的极限,你肯定不会失落望!

(故意者请把简历发至wenfeng.xiao@tendcloud.com,来信必回。
)