日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

谷歌A/B实验——重叠实验基础设施解读

發(fā)布時間:2025/3/11 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 谷歌A/B实验——重叠实验基础设施解读 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

谷歌A/B實驗——重疊實驗基礎(chǔ)設(shè)施解讀

    • 〇、來源
    • 一、背景介紹
    • 二、如何劃分參數(shù)
    • 三、谷歌設(shè)計的ab實驗系統(tǒng)
      • 3.1 域和層的設(shè)計
        • 3.1.1 基礎(chǔ)重疊域和層設(shè)計
        • 3.1.2 具備非重疊和重疊的域和層設(shè)計
        • 3.1.2 具備非重疊的域的嵌套設(shè)計優(yōu)點
        • 3.1.3 具備非重疊的域的嵌套設(shè)計缺點
        • 3.1.4 啟動層(launch layers)設(shè)計
    • 四、引用

〇、來源

谷歌ab實驗論文Overlapping Experiment Infrastructure: More, Better, Faster Experimentation第四章——OVERLAPPING EXPERIMENT INFRAS- TRUCTURE

一、背景介紹

統(tǒng)計解決方案是一個多因素系統(tǒng),其中每個因素對應(yīng)于系統(tǒng)中的一個可變參數(shù)。

實際上,一個請求將在 N 個同時進(jìn)行的實驗中進(jìn)行,其中每個實驗將修改不同的參數(shù),N 等于參數(shù)的數(shù)量。多因素實驗得到了大量理論和實踐的支持 [^1]。

然而,多因素系統(tǒng)在我們的復(fù)雜環(huán)境中根本不可行,因為并非所有參數(shù)都是獨立的,并且并非我們可能想要測試的所有參數(shù)值都與另一個參數(shù)的值一起使用(例如,粉色background上的粉色text)。

鑒于此約束,谷歌的主要思想是將參數(shù)劃分為 N 個子集。每個子集都與一個實驗層相關(guān)聯(lián)。每個請求最多同時進(jìn)行 N 個實驗(每層一個實驗)。

每個實驗只能修改與其層相關(guān)聯(lián)的參數(shù)(即在該子集中),并且同一參數(shù)不能與多個層相關(guān)聯(lián)

二、如何劃分參數(shù)

首先,我們可以將模塊化利用到多個二進(jìn)制文件中:來自不同二進(jìn)制文件的參數(shù)可以位于不同的子集中,這解決了饑餓和偏差問題。

然而,給定二進(jìn)制文件的所有參數(shù)不需要在單個子集中。我們可以通過:

a.檢查了解哪些參數(shù)不能相互獨立地改變;
b.檢查過去的實驗,即憑經(jīng)驗查看在以前的實驗中哪些參數(shù)被一起修改。

查看圖 1,我們可以為 Web 服務(wù)器、搜索結(jié)果服務(wù)器和廣告結(jié)果服務(wù)器分別設(shè)置一個或多個layer。

三、谷歌設(shè)計的ab實驗系統(tǒng)

谷歌設(shè)計的系統(tǒng)比簡單地將參數(shù)劃分為子集然后與層相關(guān)聯(lián)更靈活。

為了解釋靈活性,谷歌引入了幾個定義。 在傳入流量和系統(tǒng)參數(shù)的空間內(nèi)工作,我們有三個關(guān)鍵概念:

domain:,是流量的分段。
layer:,一個層對應(yīng)于系統(tǒng)參數(shù)的一個子集。
experiment:實驗,實驗是流量分段,其中可以為零個或多個系統(tǒng)參數(shù)指定替代值,以改變傳入請求的處理方式。

3.1 域和層的設(shè)計

我們可以嵌套域和層。

a.域可以包含層。
b.層可以包含實驗,也可以包含域。
c.在層內(nèi)嵌套域允許與該層相關(guān)聯(lián)的參數(shù)子集在該嵌套域內(nèi)進(jìn)一步分區(qū)。

在包含所有流量和所有參數(shù)的默認(rèn)的域和層。 我們可以:

3.1.1 基礎(chǔ)重疊域和層設(shè)計

針對圖 2a設(shè)計,只需將參數(shù)分為三層。 在這種情況下,每個請求最多同時進(jìn)行三個實驗,每一層一個。 每個實驗只能修改該層對應(yīng)的參數(shù)。

3.1.2 具備非重疊和重疊的域和層設(shè)計

針對圖 2b設(shè)計,首先將流量分成兩個域。 一個域可以是具有單層的域(非重疊域),另一個域?qū)⑹蔷哂腥龑拥闹丿B域。

在這種情況下,每個請求將首先分配給非重疊域或重疊域:

a.如果請求在非重疊域中,則該請求最多在一個實驗中(并且可以更改整個參數(shù)空間中的任何參數(shù))。

b.如果請求在重疊域中,則請求最多在三個實驗中,每層一個,每個實驗只能使用該層對應(yīng)的參數(shù)。

3.1.2 具備非重疊的域的嵌套設(shè)計優(yōu)點

a.擁有一個不重疊的域,允許我們運(yùn)行真正需要更改大量通常不會一起使用的參數(shù)的實驗。
b.它允許我們對參數(shù)劃分不同的分區(qū);
可以想象三個域:

  • 不重疊的域。
  • 具有一個參數(shù)分區(qū)的重疊域。
  • 具有不同參數(shù)分區(qū)的重疊域。

c.嵌套允許我們更有效地利用空間,這取決于哪些分區(qū)最常用,哪些跨層參數(shù)實驗最常用。

請注意,將當(dāng)前未使用的參數(shù)從一層移動到另一層很容易:只要確保參數(shù)可以安全地與原始層分配中的參數(shù)重疊即可。

如果層具有語義上有意義的名稱,例如“廣告結(jié)果層”和“搜索結(jié)果層”,工程師往往不愿意移動違反該語義的標(biāo)志。 當(dāng)實驗配置不正確時,有意義的名稱可以通過使其更加明顯來幫助提高穩(wěn)健性,但它也會限制工程師將利用的靈活性。

還要注意,對于基于 cookie-mod 的實驗,使用mod = f(cookie) % 1000,為了確保不同層的實驗獨立轉(zhuǎn)移,谷歌使用 mod = f(cookie, layer) % 1000 代替

3.1.3 具備非重疊的域的嵌套設(shè)計缺點

雖然這種嵌套復(fù)雜性確實增加了靈活性,但更改配置(尤其是域的配置)是有成本的:更改流量分配到域的方式會改變可用于實驗的流量

例如,如果我們將非重疊域從 10% 的 cookie mods 更改為 15%。則額外 5% 的 cookie mods 來自重疊域。

3.1.4 啟動層(launch layers)設(shè)計

另一個概念是啟動層。 啟動層在幾個關(guān)鍵方面與迄今為止討論的實驗層不同。
啟動層始終包含在默認(rèn)域中(即,它們在所有流量上運(yùn)行)

a.啟動層是參數(shù)的單獨分區(qū),即一個參數(shù)最多可以同時位于一個啟動層和最多一個“正常”層(在一個域內(nèi))。

b.為了使啟動層和正常層之間的參數(shù)重疊起作用,啟動層內(nèi)的實驗在語義上略有不同:啟動層中的實驗為參數(shù)提供了替代默認(rèn)值
換句話說,如果正常實驗層中沒有實驗覆蓋參數(shù),那么在啟動層實驗中,將使用指定的替代默認(rèn)值,并且啟動層實驗的行為就像正常實驗一樣。

c.但是,如果普通實驗層中的實驗確實覆蓋了此參數(shù),則該實驗將覆蓋參數(shù)的默認(rèn)值,無論該值是指定為系統(tǒng)默認(rèn)值還是在啟動層實驗中。

啟動層的示例如圖 2c、d 所示。 以這種方式定義啟動層使我們能夠在不干擾現(xiàn)有實驗的情況下逐步向所有用戶推出更改,并以標(biāo)準(zhǔn)化方式跟蹤這些推出。

啟動層的一般用法是為每個啟動的功能創(chuàng)建一個新的啟動層,并在功能完全推出時刪除該層(并且新的參數(shù)值被納入默認(rèn)值)

最后,由于啟動層中的實驗通常更大,因此它們可用于測試特征之間的交互。

雖然理論上我們可以測試正常實驗層中的交互作用(假設(shè)我們要么在參數(shù)在同一層時手動設(shè)置實驗,要么在參數(shù)在不同層時查看交集),因為實驗在正常層中,交叉點更小,因此交互更難檢測。

四、引用

[^1] D. Cox and N. Reid. The theory of the design of experiments, 2000.

總結(jié)

以上是生活随笔為你收集整理的谷歌A/B实验——重叠实验基础设施解读的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。