แบบลำดับชั้น Bayesian (?)


12

โปรดขออภัยการใช้ศัพท์แสงเชิงสถิติของฉันด้วย :) ฉันพบคำถามสองสามข้อเกี่ยวกับการโฆษณาและอัตราการคลิกผ่าน แต่พวกเขาไม่ได้ช่วยฉันมากกับความเข้าใจของฉันเกี่ยวกับสถานการณ์ลำดับชั้นของฉัน

มีคำถามที่เกี่ยวข้องการเป็นตัวแทนที่เท่าเทียมกันของโมเดล Bayesian ลำดับชั้นเดียวกันหรือไม่ แต่ฉันไม่แน่ใจว่าจริง ๆ แล้วพวกเขามีปัญหาที่คล้ายกัน อีกคำถามที่Priors สำหรับแบบจำลองแบบทวินามแบบเบย์แบบลำดับชั้นจะมีรายละเอียดเกี่ยวกับ hyperpriors แต่ฉันไม่สามารถแมปคำตอบของพวกเขากับปัญหาของฉันได้

ฉันมีโฆษณาสองรายการออนไลน์สำหรับผลิตภัณฑ์ใหม่ ฉันปล่อยให้โฆษณาทำงานสองสามวัน ณ จุดนี้มีคนคลิกโฆษณาเพื่อดูว่าใครได้รับคลิกมากที่สุด หลังจากเตะออกไปหมดแล้ว แต่คลิกที่มีการคลิกมากที่สุดฉันปล่อยให้มันวิ่งไปอีกสองสามวันเพื่อดูว่าผู้คนซื้อจริงแค่ไหนหลังจากคลิกโฆษณา ณ จุดนี้ฉันรู้ว่ามันเป็นความคิดที่ดีที่จะเรียกใช้โฆษณาในครั้งแรก

สถิติของฉันดังมากเพราะฉันไม่มีข้อมูลมากมายเนื่องจากฉันขายสินค้าเพียงไม่กี่รายการทุกวัน ดังนั้นจึงเป็นเรื่องยากที่จะประเมินจำนวนผู้ที่ซื้อบางอย่างหลังจากเห็นโฆษณา การคลิกเพียงครั้งเดียวจะส่งผลให้เกิดการซื้อ

โดยทั่วไปฉันต้องทราบว่าฉันเสียเงินกับโฆษณาแต่ละรายการเร็วที่สุดเท่าที่จะเป็นไปได้โดยการปรับสถิติกลุ่มโฆษณาแต่ละรายการให้ราบรื่นด้วยสถิติทั่วโลกสำหรับโฆษณาทั้งหมด

  • หากฉันรอจนกระทั่งโฆษณาทุกรายการเห็นการซื้อมากพอฉันจะพังเพราะใช้เวลานานเกินไป: การทดสอบ 10 โฆษณาที่ฉันต้องใช้จ่ายมากขึ้น 10 เท่าเพื่อให้สถิติสำหรับโฆษณาแต่ละรายการมีความน่าเชื่อถือมากพอ ตามเวลาที่ฉันอาจจะสูญเสียเงิน
  • หากฉันซื้อสินค้าโดยเฉลี่ยมากกว่าโฆษณาทั้งหมดฉันจะไม่สามารถเริ่มโฆษณาที่ไม่ได้ผลเช่นกัน

ฉันสามารถใช้อัตราการซื้อทั่วโลก (การกระจายย่อย N $ ได้หรือไม่ นั่นหมายความว่ายิ่งฉันมีข้อมูลสำหรับโฆษณาแต่ละรายการมากเท่าไหร่สถิติของโฆษณานั้นก็จะยิ่งมากขึ้นเท่านั้น หากยังไม่มีใครคลิกโฆษณาฉันคิดว่าค่าเฉลี่ยทั่วโลกเหมาะสมperclick)anduseitasapriorfor

ฉันจะเลือกการกระจายแบบใด

หากฉันมี 20 คลิกที่ A และ 4 คลิกที่ B ฉันจะทำแบบนั้นได้อย่างไร จนถึงตอนนี้ฉันก็พบว่าการกระจายตัวแบบทวินามหรือปัวซองอาจเข้าท่าที่นี่:

  • purchase_rate ~ poisson (?)
  • (purchase_rate | group A) ~ poisson (ประมาณอัตราการซื้อสำหรับกลุ่ม A เท่านั้น)

purchase_rate | group Aแต่สิ่งที่ฉันจะทำอย่างไรต่อไปในการคำนวณจริง ฉันจะเสียบการแจกแจงสองแบบเข้าด้วยกันเพื่อให้เหมาะสมกับกลุ่ม A (หรือกลุ่มอื่น ๆ ) ได้อย่างไร

ฉันต้องใส่แบบจำลองก่อนหรือไม่ ฉันมีข้อมูลที่ฉันสามารถใช้เพื่อ "ฝึกอบรม" แบบจำลองได้:

  • โฆษณา A: 352 คลิกและ 5 การซื้อ
  • โฆษณา B: การคลิก 15 ครั้งการซื้อ 0 ครั้ง
  • โฆษณา C: คลิก 3519 ครั้งมีการซื้อ 130 รายการ

ฉันกำลังมองหาวิธีประมาณความน่าจะเป็นของกลุ่มใดกลุ่มหนึ่ง หากกลุ่มมีดาต้าพอยท์เพียงไม่กี่ตัวฉันก็อยากจะถอยกลับไปที่ค่าเฉลี่ยทั่วโลก ฉันรู้บิตเกี่ยวกับสถิติแบบเบย์และได้อ่าน PDF จำนวนมากของผู้คนที่อธิบายวิธีการสร้างแบบจำลองโดยใช้การอนุมานแบบเบย์และนักบวชคอนจูเกตและอื่น ๆ ฉันคิดว่ามีวิธีการทำเช่นนี้อย่างถูกต้อง แต่ฉันไม่สามารถหาวิธีจำลองได้อย่างถูกต้อง

ฉันมีความสุขสุด ๆ เกี่ยวกับคำแนะนำที่ช่วยฉันกำหนดปัญหาของฉันแบบเบย์ นั่นจะช่วยได้มากในการค้นหาตัวอย่างออนไลน์ที่ฉันสามารถใช้เพื่อใช้งานจริง

ปรับปรุง:

ขอบคุณมากสำหรับการตอบสนอง ฉันเริ่มเข้าใจถึงปัญหาของฉันมากขึ้นเรื่อย ๆ ขอบคุณ! ให้ฉันถามคำถามสองสามข้อเพื่อดูว่าฉันเข้าใจปัญหาได้ดีขึ้นหรือไม่:

ดังนั้นผมถือว่าการแปลงจะมีการกระจายเป็น Beta-การกระจายและการกระจายเบต้ามีสองพารามิเตอร์และขab

พารามิเตอร์ hyperparameters ดังนั้นพวกเขาจะพารามิเตอร์ไปก่อน? ดังนั้นในที่สุดฉันจะกำหนดจำนวนการแปลงและจำนวนคลิกเป็นพารามิเตอร์ของการกระจายเบต้าของฉัน12 12

เมื่อถึงจุดหนึ่งเมื่อฉันต้องการเปรียบเทียบโฆษณาที่แตกต่างกันดังนั้นฉันจะคำนวณX)} ฉันจะคำนวณแต่ละส่วนของสูตรนั้นได้อย่างไรP(conversion|ad=X)=P(ad=X|conversion)P(conversion)P(ad=X)

  • ฉันคิดว่าเรียกว่าความน่าจะเป็นหรือ "โหมด" ของการแจกแจงแบบเบต้า นั่นคือโดยที่และเป็นพารามิเตอร์ของการแจกแจงของฉัน แต่และที่นี่คือพารามิเตอร์สำหรับการกระจายสำหรับโฆษณาใช่ไหม? ในกรณีนี้เป็นเพียงจำนวนคลิกและ Conversion ที่โฆษณานี้เห็นหรือไม่ หรือจำนวนคลิก / Conversion ที่โฆษณาทั้งหมดเห็นหรือไม่P(ad=X|conversion)α1α+β2αβαβX

  • จากนั้นฉันก็คูณด้วยก่อนซึ่งก็คือ P (การแปลง) ซึ่งในกรณีของฉันแค่ Jeffreys ก่อนซึ่งไม่ใช่ข้อมูล การเข้าพักก่อนหน้านี้จะเหมือนกับที่ฉันได้รับข้อมูลเพิ่มเติมหรือไม่

  • ฉันหารด้วยซึ่งเป็นความน่าจะเป็นที่ขอบดังนั้นฉันจึงนับความถี่ที่โฆษณานี้ถูกคลิก?P(ad)

ในการใช้งานของ Jeffreys ก่อนหน้านี้ฉันคิดว่าฉันเริ่มที่ศูนย์และไม่รู้อะไรเลยเกี่ยวกับข้อมูลของฉัน ก่อนหน้านั้นเรียกว่า "ไม่มีข้อมูล" ขณะที่ฉันเรียนรู้เกี่ยวกับข้อมูลของฉันต่อไปฉันจะอัปเดตก่อนหน้านี้หรือไม่

เมื่อมีการคลิกและ Conversion เกิดขึ้นฉันได้อ่านว่าฉันต้อง "อัปเดต" การแจกจ่ายของฉัน นี่หมายความว่าพารามิเตอร์ของการแจกแจงของฉันเปลี่ยนไปหรือว่าการเปลี่ยนแปลงก่อนหน้า? เมื่อฉันได้รับคลิกสำหรับโฆษณา X ฉันจะอัปเดตการกระจายมากกว่าหนึ่งรายการหรือไม่ มากกว่าหนึ่งก่อน?

คำตอบ:


9

ในขณะที่คุณใช้สัญชาตญาณวิธีการตอบคำถามของคุณโดยทั่วไปคือการสร้างแบบจำลองเบย์แบบลำดับชั้น (หลายระดับ) ตัวแบบมีสามส่วนดังแสดงด้านล่าง

แบบ

แบบจำลองแบบลำดับชั้น Bayesian สำหรับอัตราการแปลงโฆษณา

  1. ในระดับประชากรเราจำลองแบบความน่าจะเป็นในการแปลงในจำนวนประชากรของโฆษณาที่ชุดโฆษณาทดสอบของคุณถูกสุ่มตัวอย่าง หนึ่งสามารถแก้ไขพารามิเตอร์ประชากรและใช้พวกเขาเป็นก่อนสำหรับระดับที่สองตามที่ระบุไว้ก่อนโดยนีล อีกทางหนึ่งเราสามารถวางพารามิเตอร์ประชากรล่วงหน้าก่อนซึ่งให้ประโยชน์เพิ่มเติมที่ตอนนี้เราสามารถแสดงความไม่แน่นอนของเราเกี่ยวกับพารามิเตอร์ประชากรในแง่ของข้อมูล ลองติดตามเส้นทางนี้และวางไว้ที่ค่าเฉลี่ยประชากรและกับความแม่นยำของประชากร ( เช่นความแปรปรวนผกผัน) สามารถหาการกระจายก่อนหน้าได้โดยใช้N(μμ0,η0)μGa(λa0,b0)μ0=0,η0=0.1,a0=1,b0=1ซึ่งทำให้มั่นใจได้ว่าการอนุมานหลังของเราจะถูกครอบงำโดยข้อมูล

  2. ในระดับโฆษณาแต่ละรายการเราสามารถจำลองความน่าจะเป็นในการแปลงของโฆษณาได้รับตามการกระจายตามปกติ ดังนั้นสำหรับแต่ละโฆษณาที่ logit แปลงน่าจะเป็นเป็นแบบจำลองเป็นแลมบ์ดา)πjjjρj:=logit(πj)N(ρjμ,λ)

  3. สุดท้ายที่ระดับของข้อมูลที่สังเกตเราจำลองจำนวนการแปลงสำหรับโฆษณาเป็นโดยที่ใช้การแปลง sigmoid จะแปลกลับอัตราโลจิตเข้าสู่ความน่าจะเป็นและที่คือจำนวนการคลิกที่โฆษณาเจkjjBin(kjσ(ρj),nj)σ(ρj)njj

ข้อมูล

ตัวอย่างเช่นลองทำข้อมูลที่คุณโพสต์ในคำถามเดิมของคุณ

โฆษณา A: 352 คลิกและ 5 การซื้อ

โฆษณา B: การคลิก 15 ครั้งการซื้อ 0 ครั้ง

โฆษณา C: คลิก 3519 ครั้งมีการซื้อ 130 รายการ

ซึ่งเราแปลเป็น:n1=352,k1=5,n2=15,k2=0,

การอนุมาน

การอินเวอร์เตอร์โมเดลนี้หมายถึงการได้รับการแจกแจงด้านหลังสำหรับพารามิเตอร์โมเดลของเรา ที่นี่ฉันใช้วิธีการแปรปรวนแบบเบย์เพื่อจำลองแบบผกผันซึ่งมีประสิทธิภาพมากกว่าการสุ่มตัวอย่างแบบสุ่มเช่น MCMC ฉันได้วางแผนผลลัพธ์ด้านล่าง

ข้อมูลและผลลัพธ์จากโปสเตอร์

รูปแสดงแผงสามแผง (a) การสร้างภาพข้อมูลตัวอย่างที่คุณให้ไว้อย่างง่าย แถบสีเทาแสดงจำนวนการคลิกส่วนแถบสีดำแสดงจำนวนการแปลง (b) การกระจายด้านหลังที่เป็นผลเหนืออัตราการแปลงค่าเฉลี่ยของประชากร เมื่อเราตรวจสอบข้อมูลเพิ่มเติมสิ่งนี้จะแม่นยำยิ่งขึ้น (c) ช่วงความน่าจะเป็นหลังกลาง 95% (หรือช่วงเวลาที่น่าเชื่อถือ) ของอัตราการแปลงหลังโฆษณาเฉพาะ

พาเนลสุดท้ายแสดงคุณลักษณะสำคัญสองประการของวิธีการแบบเบย์เพื่อการสร้างแบบจำลองลำดับชั้น ก่อนอื่นความแม่นยำของผู้ตกแต่งจะสะท้อนจำนวนจุดข้อมูลพื้นฐาน ตัวอย่างเช่นเรามีจุดข้อมูลจำนวนมากสำหรับโฆษณา C ดังนั้นด้านหลังของมันจึงแม่นยำกว่าโปสเตอร์โฆษณาอื่น ๆ

ประการที่สองการอนุมานโฆษณาเฉพาะจะได้รับแจ้งจากความรู้เกี่ยวกับประชากร ในคำอื่น ๆ posteriors เฉพาะเพื่อการโฆษณาอยู่บนพื้นฐานของข้อมูลจากทั้งกลุ่มผลที่รู้จักกันในการหดตัวของประชากร ตัวอย่างเช่นโหมดหลัง (วงกลมสีดำ) ของโฆษณา A นั้นสูงกว่าอัตราการแปลงเชิงประจักษ์ (สีน้ำเงิน) มาก นี่เป็นเพราะโฆษณาอื่น ๆ ทั้งหมดมีโหมดหลังที่สูงกว่าและทำให้เราสามารถได้รับการประมาณความจริงที่ดีขึ้นโดยการแจ้งการประมาณโฆษณาเฉพาะของเราโดยค่าเฉลี่ยของกลุ่ม ยิ่งเรามีข้อมูลเกี่ยวกับตัวโฆษณาตัวใดตัวหนึ่งน้อยลงเท่าใดตัวละครตัวหลังก็จะยิ่งได้รับอิทธิพลจากข้อมูลจากตัวโฆษณาตัวอื่น ๆ

ความคิดทั้งหมดที่คุณอธิบายไว้ในคำถามต้นฉบับของคุณนั้นสามารถทำได้โดยธรรมชาติในแบบจำลองด้านบนซึ่งแสดงให้เห็นถึงประโยชน์ใช้สอยของการตั้งค่าแบบเบย์อย่างเต็มที่


เคย์ขอบคุณสำหรับคำตอบโดยละเอียด ฉันเข้าใจว่าคำตอบนั้นเก่าไปหน่อย แต่คุณคิดจะแบ่งปันรหัสที่แนบมาหรือไม่ถ้าคุณเก็บไว้? ฉันพยายามที่จะเรียนรู้แบบจำลองแบบลำดับชั้น Bayesian แต่พยายามที่จะหาตัวอย่างที่ใช้งานง่ายใน R.
Zhubarb

@ Kay ขอบคุณสำหรับคำตอบที่น่าสนใจคุณช่วยเพิ่มการอ้างอิงถึงโมเดล Bayesian แบบลำดับชั้นได้ไหม ขอบคุณ!
user511005

1
สวัสดี @Zhubarb, user511005 นี่คือลิงค์ไปยังบทความที่อธิบายถึงโมเดลด้านบน: sciencedirect.com/science/article/pii/S1053811913002371ฉันได้รวบรวมคำแนะนำสั้น ๆ เกี่ยวกับการอนุมานแบบแปรผันที่นี่: people.inf.ethz.ch/ bkay / เจรจา / Brodersen_2013_03_22.pdf
Kay Brodersen

2

คุณต้องประเมินความน่าจะเป็นของ "การแปลง" (การซื้อ) ที่ได้รับจากการคลิกสำหรับโฆษณาแต่ละรายการ (ดูเหมือนว่าคุณสมมติว่าความน่าจะเป็นของการแปลงนั้นเหมือนกันสำหรับการคลิกแต่ละครั้งซึ่งมีความสมเหตุสมผล)p

วิธีคชกรรมการทำเช่นนี้คือการประเมินการจัดจำหน่ายมากกว่าซึ่งเป็นเบต้าและมีพารามิเตอร์รูปร่างเท่ากับจำนวนของการแปลงบวกและเท่ากับจำนวนการคลิกที่ไม่ได้ผลในการแปลงบวก'paabb

aและแทนค่าก่อนหน้าของคุณ ใช้สำหรับ Jeffreys 'ก่อน เพื่อ "ถอยกลับ" ไปเป็นค่าเฉลี่ยทั่วโลกมีวิธีตั้งค่าตามข้อมูลทั้งหมดb(12,12)a,b

ในการรับค่าประมาณจากตัวประมาณค่าของคุณด้วยพารามิเตอร์คุณสามารถเลือกค่าความน่าจะเป็นสูงสุดโหมดของการแจกแจงแบบเบต้าpa,b


เพื่อตอบการแก้ไขของคุณ:

การแปลงไม่ได้ Beta-กระจาย แต่ Bernoulli กระจายกับความน่าจะพีโปรดเปรียบเทียบว่าผมตั้งและในวรรค 2 กับสิ่งที่คุณเขียน โปรดทราบว่าคุณมีสำหรับแต่ละโฆษณาและทำให้ความเชื่อมากกว่าสำหรับแต่ละโฆษณาและแต่ละความเชื่อเหล่านั้นมีของตัวเองและขpabppab

การอัปเดตแบบเบย์คือ

P(px)P(p)P(xp)

โดยที่คือการสังเกต (การแปลงหรือไม่มีการแปลง) และถูกเลือกสำหรับโฆษณาที่เหมาะสม สูตรนี้จะทำงานอยู่แล้วในการปรับปรุงสำหรับและซึ่งทำงานเพื่อที่ว่าในกรณีของการแปลงคุณเพิ่ม 1 ถึงมิฉะนั้นคุณจะเพิ่ม 1 - นี่คือการปรับปรุงความเชื่อของพีxpababp

ก่อนหน้าของ Jeffreys นั้นไม่เหมือนกับของ uninformative ก่อน แต่ฉันเชื่อว่ามันจะดีกว่าถ้าคุณไม่มีเหตุผลที่ดีที่จะใช้มัน อย่าลังเลที่จะถามคำถามอื่นหากคุณต้องการเริ่มการสนทนาเกี่ยวกับเรื่องนั้น


ขอบคุณสำหรับการตอบสนอง! ฉันอัปเดตคำถามเดิมของฉันเพราะตัวละครในกล่องความคิดเห็นนี้หมด มันจะดีมากถ้าคุณสามารถให้ข้อเสนอแนะสำหรับรายละเอียดบางอย่างที่ฉันเขียนในการอัปเดต
Mika Tiihonen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.