“漏斗分析(Funnel analysis)”用于分析事件序列,幫助網(wǎng)站或移動(dòng)應(yīng)用提升用戶(hù)參與度。為了提升Twitter用戶(hù)的參與度,Twitter的數(shù)據(jù)科學(xué)團(tuán)隊(duì)借助這個(gè)概念了解用戶(hù)在注冊(cè)或發(fā)推過(guò)程中如何同用戶(hù)界面交互。他們用它分析用戶(hù)交互日志,以確保他們交付的產(chǎn)品特性對(duì)用戶(hù)有用且有吸引力。
Krist Wongsuphasawat是Twitter的職業(yè)數(shù)據(jù)科學(xué)家,他最近寫(xiě)了一篇有關(guān)他們的試驗(yàn)性可視化分析方法的文章。該方法用于特定的事件序列計(jì)數(shù),此外,為了提供更廣闊的視角,該方法還會(huì)聚合并可視化序列中各步驟之間的信息。
日志分析可以像單事件計(jì)數(shù)那么簡(jiǎn)單,例如,點(diǎn)擊Tweet按鈕。但是,該事件只是打開(kāi)了Tweet編輯器,并不一定意味著用戶(hù)成功發(fā)推。漏斗分析或“漏斗計(jì)數(shù)(counting funnels)”可以提供更宏觀的畫(huà)面,便于查看用戶(hù)在開(kāi)始編輯之后中途放棄Tweet的次數(shù)。這會(huì)引出更具探究性的問(wèn)題,但是,Twitter的數(shù)據(jù)規(guī)模對(duì)數(shù)據(jù)分析提出了挑戰(zhàn)。這些數(shù)據(jù)涉及1萬(wàn)多種事件類(lèi)型和數(shù)以?xún)|計(jì)的用戶(hù)。Twitter團(tuán)隊(duì)已經(jīng)構(gòu)建了一個(gè)統(tǒng)一的日志基礎(chǔ)設(shè)施,用于捕獲所有客戶(hù)端的用戶(hù)活動(dòng),使得這些日志成為組織內(nèi)最大的數(shù)據(jù)集之一。
團(tuán)隊(duì)設(shè)計(jì)了一個(gè)試驗(yàn)性可視化漏斗分析工具Flying Sessions,用于支持漏斗探究,減少工作量,并提供比簡(jiǎn)單計(jì)數(shù)更多的信息。該工具幫助數(shù)據(jù)科學(xué)家理解日志數(shù)據(jù)。用戶(hù)可以通過(guò)選擇部分會(huì)話來(lái)指定分析粒度。然后,該工具會(huì)為用戶(hù)提供聚合結(jié)果,用戶(hù)可以在可視化界面上交互地探究這些結(jié)果。
該方案的數(shù)據(jù)管道包含三個(gè)部分:“會(huì)話生成(sessionzation)”、分段和聚合??梢暬治龉ぞ哂玫降募夹g(shù)包括Hadoop、Scalding、D3和d3Kit。Scalding用于對(duì)Hadoop中大量的原始日志事件進(jìn)行過(guò)濾,并匯總成較小的JSON文件,后者可以通過(guò)使用D3和d3Kit開(kāi)發(fā)的Web用戶(hù)界面可視化。
會(huì)話生成階段會(huì)為每個(gè)用戶(hù)創(chuàng)建一個(gè)會(huì)話,并添加連續(xù)事件(按時(shí)間戳排序)。
分段階段會(huì)從會(huì)話中提取與分析師指定的“對(duì)齊點(diǎn)(alignment point)”相關(guān)的事件子序列,并根據(jù)它們包含的對(duì)齊點(diǎn)將子序列分組成段。該階段包括識(shí)別會(huì)話片段,然后提取對(duì)齊點(diǎn)之間的事件序列并分組。
最后,聚合階段會(huì)通過(guò)管道將上個(gè)階段生成的段并行發(fā)給各種聚合器,以便生成可以在前端可視化的匯總信息(比如事件平均次數(shù))。這種設(shè)計(jì)允許在需要額外的匯總類(lèi)型時(shí)添加新的聚合器。
此外,Twitter團(tuán)隊(duì)還設(shè)想了幾種設(shè)計(jì)改進(jìn),以便將來(lái)增加使用模式挖掘或更復(fù)雜算法的新聚合類(lèi)型。
查看英文原文:Funnel Analysis at Twitter for Improving User Engagement