Retentioneering:我們如何使用 Python 和 Pandas 來編寫用於產品分析的開源工具

你好,哈布爾。 本文致力於介紹四年來開發一套用於處理應用程式或網站中使用者移動軌蹟的方法和工具的成果。 開發的作者 - 馬克西姆‧戈茲,他是產品創建者團隊的負責人,也是這篇文章的作者。 該產品本身被稱為 Retentioneering;現在它已被轉換為開源程式庫並發佈在 Github 上,以便任何人都可以使用它。 所有這些可能都會引起那些參與產品和行銷分析、促銷和產品開發的人員的興趣。 順便說一句,關於哈布雷 一篇關於與 Retentioneering 合作的案例的文章已經發表。 新材料解釋了該產品的用途和使用方法。

讀完本文後,您自己將能夠編寫自己的 Retentioneering;它可以是應用程式內外處理使用者軌跡的任何標準化方法,讓您可以詳細了解行為特徵,並從中提取見解以促進成長業務指標。

什麼是保留策略以及為什麼需要它?

我們最初的目標是將成長駭客從「數位巫術」的世界轉移到數位、分析和預測的世界。 因此,對於那些喜歡數字而不是奇幻故事的人來說,產品分析被簡化為純粹的數學和編程,以及“品牌重塑”、“重新定位”等流行語的公式,這些聽起來不錯,但在實踐中幫助不大。 。

為了解決這些問題,我們需要一個透過圖形和軌跡進行分析的框架,同時需要一個能夠簡化典型分析例程的函式庫,作為描述人類和機器人都可以理解的常規產品分析任務的方式。 該庫提供了描述用戶行為並將其以正式而清晰的語言連結到產品業務指標的能力,從而簡化和自動化了開發人員和分析師的日常任務,並促進了他們與業務部門的溝通。

保留導向是一種方法和分析軟體工具,可以適應並整合到任何數位(而不僅僅是)產品中。

我們於 2015 年開始開發該產品。 現在,這是一套現成的(儘管還不理想)Python 和 Pandas 工具,用於處理資料、具有類似 sklearn 的 api 的機器學習模型、用於解釋機器學習模型 eli5 和 shap 結果的工具。

一切都已經包起來了 到開放的 Github 儲存庫中方便的開源庫 -retentioneering-tools。 使用該庫並不困難;幾乎任何熱愛產品分析但之前從未編寫過程式碼的人都可以獨立地將我們的分析方法應用於他們的數據,而無需投入大量時間。

那麼,以前從未進行過分析的程式設計師、應用程式創建者或開發或測試團隊的成員可以開始使用此程式碼並查看其應用程式的使用模式,而無需外部協助。

作為分析基本要素的使用者軌跡及其處理方法

使用者軌跡是特定時間點的使用者狀態的序列。 此外,事件可以來自不同的資料來源,包括線上和線下。 用戶發生的事件是他的軌跡的一部分。 例子:
• 按下按鈕
• 看到了圖片
• 點選螢幕
• 收到一封電子郵件
• 向朋友推薦該產品
• 填寫表格
• 點選螢幕
• 滾動的
• 前往收銀台
• 點了墨西哥捲餅
• 吃了墨西哥捲餅
• 吃墨西哥捲餅中毒
• 從後門進入咖啡館
• 從正門進入
• 最小化應用程式
• 收到推播通知
• 在螢幕上停留的時間超過 X
• 支付訂單費用
• 購買訂單
• 貸款被拒絕

如果您獲取一組使用者的軌跡資料並研究轉換的結構,您可以準確追蹤他們在應用程式中的行為的結構。 透過一個圖來實現這一點很方便,其中狀態是節點,狀態之間的轉換是邊:

Retentioneering:我們如何使用 Python 和 Pandas 來編寫用於產品分析的開源工具

「軌跡」是一個非常方便的概念 - 它包含有關所有用戶操作的詳細信息,並且能夠向這些操作的描述添加任何附加數據。 這使其成為一個通用物件。 如果您擁有美觀且方便的工具來處理軌跡,那麼您就可以找到相似之處並將其細分。

軌跡分割乍看之下可能看起來非常複雜。 在正常情況下,是這樣的——你需要使用連接矩陣比較或序列比對。 我們設法找到了一種更簡單的方法——研究大量軌跡並透過聚類對它們進行分割。

事實證明,可以使用連續表示將軌跡轉換為點,例如, 特遣部隊。 變換後,軌跡變成空間中的一個點,軌跡中各種事件的標準化發生以及它們之間的轉換沿著軸繪製。 來自一千個或更多維空間的這個東西(dimS=sum(event types)+sum(ngrams_2 types))可以使用以下方法投影到平面上 TSNE。 TSNE 是將空間維度減少到 2 個軸的變換,如果可能的話,保留點之間的相對距離。 因此,可以在平面圖(軌蹟的圖形投影圖)上研究不同軌蹟的點如何在它們之間定位。 它分析它們彼此之間的接近程度或不同程度,它們是否形成集群或分散在地圖上,等等:

Retentioneering:我們如何使用 Python 和 Pandas 來編寫用於產品分析的開源工具

保留導向分析工具能夠將複雜的資料和軌跡轉換為可以相互比較的視圖,然後可以檢查和解釋轉換的結果。

說到處理軌蹟的標準方法,我們指的是我們在保留優化中實現的三個主要工具——圖、步長矩陣和軌跡投影圖。

使用 Google Analytics、Firebase 和類似的分析系統非常複雜,而且不是 100% 有效。 問題是用戶受到許多限制,因此分析人員在此類系統中的工作取決於滑鼠點擊和切片選擇。 保留優化可以處理使用者軌跡,而不僅僅是像 Google Analytics 那樣使用漏斗,儘管它是針對特定細分市場構建的,但詳細程度通常會簡化為漏斗。

保留策略和案例

作為使用所開發工具的範例,我們可以引用俄羅斯大型利基服務的案例。 該公司擁有一款深受客戶歡迎的 Android 行動應用程式。 該行動應用程式的年營業額約為7萬盧布,季節性波動範圍為60-130萬盧布。同一家公司還有iOS應用程序,蘋果應用程式用戶的平均帳單高於其他用戶的平均帳單。使用Android 應用程式的用戶端- 1080 rub。 與 1300 盧布相比。

該公司決定提高 Android 應用程式的效率,為此進行了徹底的分析。 產生了幾十個關於提高應用程式有效性的假設。 使用 Retentionneering 後,發現問題出在向新使用者顯示的訊息中。 他們收到了有關品牌、公司福利和價格的資訊。 但事實證明,這些訊息應該幫助用戶學習如何在應用程式中運作。

Retentioneering:我們如何使用 Python 和 Pandas 來編寫用於產品分析的開源工具

這樣做後,應用程式的卸載量減少了,訂單轉換率增加了 23%。 起初,20% 的傳入流量用於測試,但幾天后,在分析第一個結果並評估趨勢後,他們顛倒了比例,相反,留下 20% 給對照組,百分之八十參加了測試。 一週後,決定依序加入另外兩個假設的檢定。 短短七週內,Android 應用的營業額就比之前成長了一倍半。

如何使用保留導引?

第一步非常簡單 - 使用 pip installtentioneering 指令下載庫。 這個儲存庫本身包含一些產品分析任務的現成範例和資料處理案例。 此套裝會不斷更新,直到足以滿足初次相識的需求。 任何人都可以採用現成的模組並立即將其應用到自己的任務中 - 這使他們能夠立即盡可能快速有效地建立更詳細的用戶軌跡分析和優化流程。 所有這一切使得透過清晰的程式碼找到應用程式的使用模式並與同事分享這種經驗成為可能。

保留最佳化是一個值得在您的應用程式的整個生命週期中使用的工具,原因如下:

  • 保留策略對於追蹤和持續優化使用者軌跡以及提高業務績效非常有效。 因此,電子商務應用程式中經常會添加新功能,但無法始終正確預測其對產品的影響。 在某些情況下,新舊功能之間會出現相容性問題 - 例如,新功能「蠶食」現有功能。 在這種情況下,不斷分析軌跡正是所需要的。
  • 廣告管道的情況也類似:新的流量來源和廣告創意不斷受到考驗,需要監控季節性、趨勢和其他事件的影響,這導致越來越多新的問題出現。 這也需要對使用者機制進行持續監控和解釋。
  • 有許多因素不斷影響應用程式的效能。 例如,開發人員發布新版本:解決當前問題,他們不知不覺地返回舊問題或創建一個全新的問題。 隨著時間的推移,新版本的數量不斷增加,追蹤錯誤的流程需要自動化,包括分析使用者軌跡。

整體而言,保留導向是一種有效的工具。 但完美是沒有限制的——它可以而且應該被改進、開發,並在其基礎上建立新的酷產品。 專案的社群越活躍,分叉就會越多,並且會出現新的有趣的使用選項。

有關保留工具的更多資訊:

來源: www.habr.com

添加評論