|
|
以下内容是知乎看到的,转载过来。
% C3 o* i0 m I! K5 s
2 S, |1 l3 x; [/ `/ ?5 i8 n" z感觉这个实现起来好像也不难。过完年折腾下。1 s' @. W& D0 i$ u) ~$ }) {
7 w# C6 `- f$ y1 S f. i8 q* \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~& n. j. p& f* _, t
这几个月在一家为客户在Facebook上做广告的加拿大公司工作。简单说说他们对于数据的态度吧。这是一家小型Startup公司,总共不到20个人。其中4个人(包括我)是技术,剩下的除了CEO都是Account Manager。当然CEO很多时候也在做Account Manager的事情。
3 Z" E( D0 a! o" r$ \" I4 D" \0 e- z! [
刚到这个公司的时候,觉得他们的code很烂,他们的数据库设计也很烂。后来才知道,当初startup的时候,是找了印度公司做外包的,他们对这个外包很不满意,所以一期项目搞定之后,就全部拿过来自己搞了。但是后遗症也留下了。 : p* ?. u/ \( y3 n
1 Q' e: x$ ]( @
这个公司的数据模型很清楚,只要通过低于广告主给出的CPA价格能赚到钱,就想办法增加广告覆盖率。但是常识大家都明白,增加覆盖率很可能导致转化率下降。但是如果接受这个假设,那么就没有什么赚钱的机会了。恰恰是因为他们相信,除了常识之外,还有一些事情是经验之外的。 # _# b9 j1 }, A8 @ x- q
: O Y5 T- r5 g* G7 z比如说关键词……有些关键词对某些人有用,对另外一些人没用。如果不做数据挖掘,生想广告词或者关键词的组合,累死了也赚不到什么钱。
& \! p8 l* g$ c( y4 f$ ?7 v# d1 S, F5 S% h9 H" A
所以……这个公司在代码中设计了几个基本核心算法: 3 J, z; @) v. d6 G
1. 一种止损的trigger,对于任何亏钱的广告,自动停止。
2 @' h+ Q4 ^5 [2 S' F4 z2. 一个自动发布广告的cron,程序一直在扫描。一旦发现一些广告能赚钱,就自由组合这些广告元素再自动发布到广告系统里面。这样,就能出乎意料的发现一些更加赚钱的广告形式。
9 l; [- v8 m( T D( G3. 做了很多广告更新的算法,搞了一个自动化的A/B测试策略来针对Facebook广告价格的浮动,来更新广告的价格。 7 K7 \+ {( ?, |
9 a, i9 x* B& z3 [! s6 y P3 K通过阅读这些算法让我感受很深。所谓的数据分析,不是一个产品经理跑到运维,数据库管理员或者工程师那里说:我现在要跟踪什么什么数据,你帮我出一下吧。然后再对着跑出来的数据琢磨这些数据是否合理。
" [) W9 a1 i1 L6 W3 [4 S% B7 e2 ~; X8 G4 c' E& C1 e" q8 E0 [4 n# h+ |
在这个公司里,只要发现一个数据模式对收入有影响,就会直接编码到系统里,变成自动执行的代码。基于这样的数据导向原则,代码面临无穷多次的重构,因为谁也不知道,下一个数据模式会发生在哪个层面,哪几个数据之间会发生关系。
7 d) {6 N( X' i9 C6 T: K+ t
( m# N) m5 g2 p% R# U: u( i8 J我觉得国内的不少公司,还在以daily report分析数据,还在说数据只是为了验证产品经理想法的阶段。这动作是不是太慢了?
; _ I R- ~ ^% I$ W m+ ]! I
1 i7 M/ X+ [; l1 b( e& ]9 b3 q接下来的话,随便说说,不一定有参考价值:
" @8 K6 R5 S1 {! H* \
( M' m7 d* P: E, a1. 对于大多数网站,如果你想用数据为导向,必须建立系统级的A/B测试机制。对于界面层面的重构,一个产品经理+一个工程师,一天用这个系统一天至少能做3-4个。系统级别的A/B测试要能够保证快速上线,第一时间看到数据,一旦超过临界值直接结束测试、保留数据并生成报告(直接邮件发送,而不是让产品经理想起来跑到后台再查)
' A# R& t3 d! e7 R$ }" H& U% s- a2 A4 \3 m7 v* l! H N. Q' _! v
2. 对于做社交网站,或者有复杂用户数据模型的公司,要在界面呈现和用户数据之间建立匹配系统。这样产品经理可以设计几种呈现模式,丢到匹配系统中,过不了多久,就能发现用户对不同呈现的数据反映的不同,然后系统性地固化这种机制。
3 u# S% x1 i# g' r& w/ P4 i, N) F Y" W
3. 通过cookie或者用户登录信息,建立针对不同用户的内部tag系统,看这些tag在系统2里有没有明显差异。如果有就可以固化下来,用来提高关键指标。 # ?7 P, ?$ F5 ]! `# J$ F$ E- _
2 y. H+ U2 H7 m: O
所以,我现在对于数据分析的感觉是: ! e4 F: A) J4 y3 l& m2 f
1.要提高一个数据指标,盯着它是没有用的。必须找到影响这个数据的另几个可操作性更强的数据指标,调整它们。
& J/ k- U+ u$ e2 o9 t2.分析数据的可能性要充分,充分分析的基础是测试充分多的可能性。如果你想测试图标的颜色从绿色变成红色会不会更好。那为什么不测试一下蓝色,紫色和黄色呢?
4 `0 K0 c3 v% @" b7 b3 U3. 如果小规模数据已经可以说明问题,就没有必要延长测试时间,也没有必要扩大测试范围。 $ C" @) I. U+ e% U; L# p k4 K$ D! f
4. 要充分利用计算机来帮你做数据采集和分析,缩短数据分析的周期,降低数据分析的成本。 5 U7 E. E2 b; q5 z8 v# m2 n( k9 H
5. 有必要的时候,可以让计算机帮你找pattern,因为计算机没有偏见。
9 \$ S7 S" f7 h. a: u7 o2 c2 N8 `编辑于 2011-08-16 |
|