摘要:在同行評議上,我們檢查方法論的改進現(xiàn)有工作的關(guān)聯(lián)性以及準確的解釋性聲明。學(xué)習價值通過之前一系列的工作,現(xiàn)在數(shù)據(jù)科學(xué)家可以分享自己的新方法論代碼技術(shù)并且加快品牌化推廣,讓團隊之外的人可以快速了解自己的領(lǐng)域。
頑疾
Airbnb的數(shù)據(jù)團隊很重要的一個職責就是傳播基于數(shù)據(jù)的決策方法。我們將數(shù)據(jù)的獲取民主化,使得每一個Airbnb的成員都可以量化他們基于數(shù)據(jù)的決策影響力并且借此洞察用戶偏好,提升數(shù)據(jù)產(chǎn)品的用戶體驗。最近,我們開始解決一個令人頭疼的問題。隨著組織的擴大,如何確保我們的一個洞見有效地在社交網(wǎng)絡(luò)傳播開,這在我們內(nèi)部稱之為知識擴張。
當我們團隊僅由幾個樂于分享和發(fā)現(xiàn)研究技巧的人組成這不是什么難題。但是當我們團隊開始快速擴張時,這個問題一下就被放大了。Jennifer是一位新來的數(shù)據(jù)科學(xué)家,她正在研究如何通過房東拒租的話題和同事開展工作。
這里是我們所看到的:
Jennifer 找到了一堆的PPT、Email、Google Docs 并且詢問團隊其他成員有關(guān)這個項目的歷史。
前人的代碼已經(jīng)不是最新的了,但 Jennifer 還是從 GitHub 或者原來作者的機器上弄下來代碼。
在和代碼一頓混戰(zhàn)之后, Jennifer 意識到之前的項目有些許問題,她決定從頭開始擼代碼。
在浪費大量重復(fù)工作之后,Jennifer 又放棄了重頭開始的想法,她感到精疲力盡。
Jennifer 留下了一堆的 PPT、Email、Google Doc, 循環(huán)往復(fù)。
基于其他公司的對話,我們發(fā)現(xiàn)這個現(xiàn)象實在太普遍了。隨著組織的擴張,跨團隊跨時期的知識傳輸成本不斷增長,一個低效、烏合的研究環(huán)境使得這種情況雪上加霜,放慢了分析和決策的速度。因此,一個更加一氣呵成的解決方案可以加快決策落地的速度并且保持公司在知識洪流中立于不敗之地。
藥方隨著我們看到這個問題工作流的不斷發(fā)生,我們意識到我們可以做得更好。作為一個團隊,我們在一起決定了做研究的五個關(guān)鍵原則:
可重復(fù)性 - 代碼不應(yīng)該分離,整個查詢、轉(zhuǎn)化、可視化、文檔撰寫應(yīng)該一氣呵成,并且保證結(jié)果是盡量更新的。
質(zhì)量?-?沒有經(jīng)過正確性和準確性審查的研究都不應(yīng)該被共享。
用戶體驗 - 研究結(jié)果應(yīng)該是讓讀者容易理解的,我們也應(yīng)該將美感和品牌延伸考慮在內(nèi)。
可得性 - 任何人都可以發(fā)現(xiàn)、瀏覽并且保持在相關(guān)工作話題上的更新。
學(xué)習價值 - ?與可重復(fù)性,其他研究者應(yīng)該能夠通過工具和技術(shù)從其他人的工作中增益自己的能力。
根據(jù)這些原則,我們多帶帶調(diào)查了現(xiàn)有的工具來解決這個問題。我們注意到Rmarkdown和 iPython notebook 是一個可重復(fù)性研究的一個優(yōu)秀解決方案。 GitHub 提供了一個審查框架,但是對于代碼之外的內(nèi)容和文檔,比如圖片就沒有什么好的解決方案。 可得性通常是基于文件夾的形式的,但是類似Quora這樣的其他站點內(nèi)在對標簽和話題又有特殊的審查機制。
綜上,我們將這些想法集成到一個系統(tǒng)里面。我們的解決方案整合了貢獻和審查的工作,用一個工具來呈現(xiàn)和傳播知識。我們內(nèi)部稱之為"知識倉庫"。
這里的核心其實是一個我們提交工作成果的 Git 倉庫。我們在 Jupyter 筆記、Rmarkdown 文件或者純 markdown都會發(fā)布在這里,所有的文件(包括查詢文件和腳本)都會被提交。每個文件都從一個很小的結(jié)構(gòu)化元數(shù)據(jù)開始,包括作者、標簽以及TLDR,再用一個Pyhon腳本驗證內(nèi)容并用Markdown格式轉(zhuǎn)化為純文本。我們使用 GitHub 從審查流程中拉取請求系統(tǒng)。最后,用一個 Flask的 web-app 來渲染Repo的內(nèi)容作為一個按時間、話題、內(nèi)容排序的內(nèi)部博客。
這些工具集的最頂層,我們有一個流程 專注于確保所有研究是高質(zhì)量和高可用的。和工程代碼不同,低質(zhì)量的研究是不會產(chǎn)生指標下降或崩潰日志的。相反,低質(zhì)量的研究表現(xiàn)為知識的環(huán)境嘈雜,而團隊只能信任他們自己創(chuàng)建的研究。
為了避免這種現(xiàn)象的發(fā)生,我們將流程封裝在工具里面,結(jié)合了工程上的代碼評審和學(xué)術(shù)上的同行評議方法,保證我們的研究結(jié)果以一個startup的速度在推進。在代碼評審的環(huán)節(jié),我們檢查代碼的正確性、最佳實踐和工具。在同行評議上,我們檢查方法論的改進、現(xiàn)有工作的關(guān)聯(lián)性以及準確的解釋性聲明。我們通常不指望一個研究是面面俱到的,但是也不能草率迭代,這些對他們都是有正確的和透明的限制的。我們能夠駕馭內(nèi)部的R和Python包并維護品牌調(diào)性、整合數(shù)據(jù)倉庫的函數(shù)庫、以及基于GitHub的R和Python筆記的文件處理流程。
圖一 - 一個兩篇文章的總結(jié)卡牌的知識流截圖
圖二?—?一篇房東同意接待的缺口天數(shù)的研究文章示例
這些工作為我們的智囊團提供了強大的功能。
可重復(fù)性?—?這個工作從核心的ETL表查詢到轉(zhuǎn)化、可視化到整理文章都是在一個文件里完成的。通常是 Jupyter 筆記, RMarkdown, 或 markdown 文件。
質(zhì)量?—?通過學(xué)習GitHub來發(fā)表、審查以及版本控制直接推動了我們整個工作流。
高可用 - markdown 將我們的 web-app 隱藏在代碼之后并且我們使用了內(nèi)部一致的美學(xué)風格,對非技術(shù)讀者也更加友好。同行評審用評論也能提供反饋和交流并提高了項目的影響力。
可得性 - 元數(shù)據(jù)的結(jié)構(gòu)非常有利于通篇瀏覽歷史研究。每個文章都有一組tag,并有一個類似于知乎話題的多對一的內(nèi)置話題機制。用戶可以訂閱話題并且收到新消息提醒。文章可以以書簽收藏、通過讀者瀏覽或者在博客流中訂閱。
學(xué)習價值 - 通過之前一系列的工作,現(xiàn)在數(shù)據(jù)科學(xué)家可以分享自己的新方法論、代碼技術(shù)并且加快品牌化推廣,讓團隊之外的人可以快速了解自己的領(lǐng)域。
這個知識倉庫囊括了海量的內(nèi)容。大量的工作都是和某個非嘗試性問題的深挖,但是對實驗結(jié)果的檢驗沒有被我們的實驗記者記錄也是很普遍的。此外也有一些純粹關(guān)于如何擴展數(shù)據(jù)分析的文章,包括新方法論的撰寫、工具或包的示例、使用SQL和Spark的教程等等。我們也在知識倉庫上公開數(shù)據(jù)博客文章,當然也包括這一篇??偟膩碚f,這個原則就是:如果這個東西將來可能對一些人有用就可以發(fā)。
未來知識倉庫仍然是個在建工程。小團隊正在持續(xù)滿足新需求特性。我們也在公司內(nèi)部的其他團隊推廣這種方法,比如一些不使用GitHub的量化研究。最后,我們正在測試一個基于Markdown的內(nèi)建審查編輯應(yīng)用,這個應(yīng)用另一個可能的特性是主編對研究議題的管理,我們也正在考慮現(xiàn)有文章的遷移問題。
推薦閱讀原作者:Chetan Sharma 和 Jan Overgoor 翻譯:Harry Zhu
英文原文地址:Scaling Knowledge at Airbnb
數(shù)據(jù)流編程教程:如何使用Airflow構(gòu)建數(shù)據(jù)科學(xué)工作流
Python 開發(fā)者如何正確使用 RStudio 編輯器
文檔定義應(yīng)用:數(shù)據(jù)科學(xué)的文檔革命
作為分享主義者(sharism),本人所有互聯(lián)網(wǎng)發(fā)布的圖文均遵從CC版權(quán),轉(zhuǎn)載請保留作者信息并注明作者 Harry Zhu 的 FinanceR專欄:https://segmentfault.com/blog...,如果涉及源代碼請注明GitHub地址:https://github.com/harryprince。微信號: harryzhustudio
商業(yè)使用請聯(lián)系作者。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/37932.html
摘要:對于數(shù)據(jù)科學(xué)的研究可以說已經(jīng)是本文我將介紹如何以文檔定義應(yīng)用的方式成為數(shù)據(jù)科學(xué)中的標準交付。參考前文解密的數(shù)據(jù)科學(xué)部門如果構(gòu)建知識倉庫,作為一個謝大大的死忠,我很自然選擇了作為我文檔輸出的首選工具。 showImg(https://segmentfault.com/img/remote/1460000006760433?w=423&h=426); 概述 隨著近年來,Rstudio 通過...
摘要:讓我們看看都做了哪些工作可視化分析增強數(shù)據(jù)可操作性測試平臺的表格和置信區(qū)間可視化可視化分析主要都是由抽象數(shù)據(jù)可視化組成的。大多數(shù)有效的可視化分析在這種情況下都是關(guān)于報告儀表盤實時分析的圖標和網(wǎng)絡(luò)圖。 showImg(https://segmentfault.com/img/remote/1460000006771644); 概述 在2015年初,我們在Uber規(guī)劃了一個官方的數(shù)據(jù)科學(xué)團...
摘要:讓我們看看都做了哪些工作可視化分析增強數(shù)據(jù)可操作性測試平臺的表格和置信區(qū)間可視化可視化分析主要都是由抽象數(shù)據(jù)可視化組成的。大多數(shù)有效的可視化分析在這種情況下都是關(guān)于報告儀表盤實時分析的圖標和網(wǎng)絡(luò)圖。 showImg(https://segmentfault.com/img/remote/1460000006771644); 概述 在2015年初,我們在Uber規(guī)劃了一個官方的數(shù)據(jù)科學(xué)團...
摘要:顯然,這單獨執(zhí)行不起作用這將通過子操作符被作為像是自己的調(diào)度任務(wù)中那樣運行。子也必須有個可用調(diào)度即使子作為其父的一部分被觸發(fā)子也必須有一個調(diào)度如果他們的調(diào)度是設(shè)成,這個子操作符將不會觸發(fā)任何任務(wù)。這兩個例子都是緣起子操作符被當做了回填工作。 showImg(https://segmentfault.com/img/remote/1460000006768714); 前言 Airbnb的...
摘要:概述我非常認同前百度數(shù)據(jù)工程師現(xiàn)神策分析創(chuàng)始人桑老師最近談到的數(shù)據(jù)分析三重境界統(tǒng)計計數(shù)多維分析機器學(xué)習數(shù)據(jù)分析的統(tǒng)計計數(shù)和多維分析,我們通常稱之為數(shù)據(jù)探索式分析,這個步驟旨在了解數(shù)據(jù)的特性,有助于我們進一步挖掘數(shù)據(jù)的價值。 showImg(https://camo.githubusercontent.com/f98421e503a81176b003ddd310d97e1e1214625...
閱讀 3933·2021-09-09 09:33
閱讀 1796·2021-09-06 15:14
閱讀 1936·2019-08-30 15:44
閱讀 3089·2019-08-29 18:36
閱讀 3776·2019-08-29 16:22
閱讀 2104·2019-08-29 16:21
閱讀 2543·2019-08-29 15:42
閱讀 1658·2019-08-29 11:00