การกระจายในส่วนย่อยของหรือไม่


9

ฉันสงสัยว่าถ้ามีทุกประเภทของการกระจายมาตรฐานในส่วนย่อยของจำนวนเต็มใด ๆ\} เท่าที่เราจะได้แสดงนี้เป็นการกระจายบนเป็นเวกเตอร์ความยาวของผลไบนารีเช่นถ้าแล้วสอดคล้องกับเวกเตอร์1){1,2,...,J}JJ=5{1,3,5}(1,0,1,0,1)

สิ่งที่ฉันกำลังมองหาคือการกระจายตัวซึ่งมาจากครอบครัวที่จัดทำดัชนีโดยพารามิเตอร์มิติ จำกัดที่จะกระจายมวลของมันในวิธีที่เวกเตอร์ไบนารีสองและจะมีความคล้ายคลึงกัน ความน่าจะเป็นถ้าพวกเขา "ปิด" ด้วยกันเช่นและมีความน่าจะเป็นที่คล้ายกัน จริงๆสิ่งที่ผมมุ่งมั่นที่จะทำหวังว่าจะใส่ก่อนในเช่นว่าถ้าฉันรู้ว่าที่มีขนาดใหญ่พอสมควรแล้วเป็นญาติอาจจะมีขนาดใหญ่เพื่อเวกเตอร์ห่างไกลจากr_1νθ()θr1r2r1=(0,0,1,0,1)r2=(0,0,1,1,1)θνθ(r1)νθ(r2)r1

กลยุทธ์อย่างหนึ่งที่อยู่ในใจก็คือการวางมาตรวัดหรือการวัดการกระจายตัวอื่น ๆ บนบนจากนั้นใช้หรืออะไรที่คล้ายกัน ตัวอย่างที่ชัดเจนจะเป็นในการเปรียบเทียบกับการแจกแจงแบบปกติ ไม่เป็นไร แต่ฉันหวังว่าจะมีสิ่งที่เป็นมาตรฐานและคล้อยตามการวิเคราะห์แบบเบย์ ด้วยสิ่งนี้ฉันไม่สามารถเขียนค่าคงที่ normalizing ได้dθ{0,1}Jνθ(r)exp(dθ(r,μ))exp{rμ2/(2σ2)}


การสุ่มตัวอย่างชุดย่อยเป็นปัญหาพื้นฐานในวิธีการสำรวจ
Stéphane Laurent

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

คุณหมายถึงการเขียน "... แล้วอาจจะเล็ก ... "? เท่าที่ค่าคงที่ normalizing ไปพิจารณาใช้ระยะทาง Hammingสำหรับตัวชี้วัด: สำหรับครอบครัวระดับการกระจายคุณสามารถคำนวณค่าคงที่นั้นเป็นผลรวมของแค่เทอม ยิ่งไปกว่านั้นตระกูลดังกล่าวทั้งหมดที่ตรงตามเกณฑ์ของคุณสามารถอธิบายได้โดยพารามิเตอร์แยกกัน (สำหรับตำแหน่ง) และพารามิเตอร์ต่อเนื่องvθ(r2)J+1JJ
whuber

@ เมื่อไม่มีฉันหมายถึงใหญ่ ฉันต้องการเพื่อกระจายมวลรอบจุดที่อยู่ติดกัน มันอาจจะเป็นมากกว่าเรื่องวลีที่วางจำหน่ายในแนวตั้งของ hypercube ฉันได้พิจารณาระยะห่างของ Hamming (ซึ่งฉันคิดว่าเหมือนกับในกรณีของฉัน); ฉันอาจต้องการปรับแต่งเป็นและฉันคิดว่าคงต้องทำ MCMC บางอย่างเพื่อสุ่มตัวอย่างจากการแจกแจง νθ()L1|riμiσi|
ผู้ชาย

โอ้ฉันเห็นแล้ว แต่นั่นไม่ใช่สิ่งที่คุณพูด ตัวอย่างเช่นในลักษณะของคุณหากมีขนาดใหญ่และคือชุดของเวกเตอร์ "ห่างไกล" จากและเป็นเวกเตอร์ใด ๆ ที่ไม่ได้อยู่ในดังนั้นจะต้อง "คง" ด้วยเช่นกัน มีขนาดใหญ่ แต่ "ไม่ไกล" และ "ปิด" ไม่ได้หมายความว่าสิ่งเดียวกัน มันจะง่ายขึ้น - และสอดคล้องกันมากขึ้นภายใน - เพื่อเรียบเรียงเงื่อนไขใหม่ตามที่คุณทำในความคิดเห็นของคุณ แต่ไม่คุณไม่จำเป็นต้องใช้ MCMC ในการสุ่มตัวอย่างจากการแจกแจงระดับสถานที่ตามระยะทาง Hamming: มีวิธีที่มีประสิทธิภาพมากกว่า ν(r1)Rr1r2Rν(r2)
whuber

คำตอบ:


6

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


สัญลักษณ์และคำจำกัดความ

จำได้ว่าในขอบเขตมิติโมดูลฟรีที่มีพื้นฐานที่Hamming ระยะระหว่างสองเวกเตอร์และคือ จำนวนสถานที่ที่ที่w_iV(e1,e2,,eJ) δHv=v1e1++vJeJw=w1e1++wJeJiviwi

รับต้นกำเนิด , ฮามมิงระยะทางพาร์ติชันเป็นทรงกลม , , ที่\} เมื่อวงแหวนกราวด์มีองค์ประกอบ ,มีองค์ประกอบและมีองค์ประกอบ (สิ่งนี้ตามมาทันทีจากการสังเกตว่าองค์ประกอบของแตกต่างจากในสถานที่ที่แน่นอนของ - ซึ่งมีv0VVSi(v0)i=0,1,,JSi(v0)={wV | δH(w,v0)=i}nVnJSi(v)(Ji)(n1)iSi(v)vi(Ji)ความเป็นไปได้ - และมีตัวเลือกสำหรับแต่ละสถานที่อย่างอิสระ)n1

เลียนแบบการแปลในทำหน้าที่ตามธรรมชาติในการแจกแจงเพื่อให้ตระกูลสถานที่ตั้ง โดยเฉพาะเมื่อคือการแจกจ่ายใด ๆ ใน (ซึ่งหมายถึงน้อยกว่า ,สำหรับและ ) และเป็นองค์ประกอบของแล้วยังเป็นการกระจาย ที่ไหนVfVf:V[0,1]f(v)0vVvVf(v)=1wVf(w)

f(w)(v)=f(vw)

สำหรับทั้งหมด ครอบครัวตั้งของการกระจายเป็นค่าคงที่อยู่ภายใต้การดำเนินการนี้:นัยสำหรับทุกวีvV ΩfΩf(v)ΩvV

การก่อสร้าง

สิ่งนี้ทำให้เราสามารถกำหนดครอบครัวที่น่าสนใจและเป็นประโยชน์ของการแจกแจงโดยการระบุรูปร่างของพวกเขาในหนึ่งเวกเตอร์คงที่ซึ่งฉันจะใช้เพื่อเป็นและแปลเหล่านี้ "ที่ก่อให้เกิดการกระจาย" ภายใต้การกระทำของที่จะได้รับครอบครัวเต็ม\เพื่อให้ได้คุณสมบัติที่ต้องการซึ่งควรมีค่าเทียบเคียง ณ จุดใกล้เคียงเพียงต้องการคุณสมบัติของการแจกแจงทั้งหมดที่สร้างขึ้นv0=(0,0,,0)VΩf

หากต้องการดูวิธีการทำงานของนี้เราจะสร้างตระกูลตำแหน่งที่ตั้งของการแจกแจงทั้งหมดที่ลดลงตามระยะทางที่เพิ่มขึ้น เพราะเพียงระยะทางที่เป็นไปได้ Hamming พิจารณาลำดับใด ๆ ลดลงของจำนวนจริงที่ไม่ใช่เชิงลบ =0 ชุดJ+1a0a0a1aJ0

A=i=0J(n1)i(Ji)ai

และกำหนดฟังก์ชันโดยfa:V[0,1]

fa(v)=aδH(0,v)A.

จากนั้นเป็นตรงไปตรงมาเพื่อตรวจสอบคือการกระจายบนVนอกจากนี้ถ้าหากเป็นผลคูณบวกของ (เป็นเวกเตอร์ใน ) ดังนั้นหากเราชอบเราอาจมาตรฐานเพื่อ 1faVfa=faaaRJ+1aa0=1

ดังนั้นการก่อสร้างนี้จึงมีการกำหนดพารามิเตอร์ที่ชัดเจนของการแจกแจงตำแหน่ง - คงที่ทั้งหมดที่ลดลงด้วยระยะทาง Hamming: การแจกแจงแบบใด ๆ อยู่ในรูปแบบสำหรับลำดับและบางเวกเตอร์วีfa(v)a=1a1a2aJ0vV

parameterization นี้อาจอนุญาตให้มีสเปคที่สะดวกในการไพรเออร์: ปัจจัยที่พวกเขาเข้าไปก่อนที่สถานที่ตั้งและก่อนกับรูปร่าง{a} (แน่นอนว่าเราสามารถพิจารณาชุดนักบวชที่มีขนาดใหญ่กว่าซึ่งมีที่ตั้งและรูปร่างและไม่เป็นอิสระ แต่สิ่งนี้จะเป็นงานที่ซับซ้อนมากขึ้น)va

การสร้างค่าสุ่ม

วิธีหนึ่งในการสุ่มตัวอย่างจาก เป็นขั้นตอนโดยแยกตัวประกอบเข้าสู่การกระจายตัวของดาวฤกษ์และเงื่อนไขการกระจายในแต่ละวงทรงกลม:fa(v)

  1. วาดดัชนีจากการกระจายแบบไม่ต่อเนื่องบนกำหนดโดยความน่าจะเป็นโดยที่ถูกกำหนดไว้ก่อน .i{0,1,,J}(Ji)(n1)iai/AA

  2. ดัชนีสอดคล้องกับชุดของเวกเตอร์ที่แตกต่างกันจากในตรงตำแหน่ง ดังนั้นให้เลือกที่เหล่านั้นออกจากเซ็ตย่อยที่เป็นไปได้ซึ่งให้แต่ละความน่าจะเป็นที่เท่ากัน (นี่เป็นเพียงตัวอย่างของห้อยออกมาจากโดยไม่ต้องทดแทน.) ให้เซตนี้ของสถานที่จะเขียนฉันivii(Ji)iJ iI

  3. วาดองค์ประกอบโดยอิสระเลือกค่าสม่ำเสมอจากชุดของสเกลาไม่เท่ากับสำหรับทุกและการตั้งค่าอย่างอื่นw_jเท่ากันสร้างเวกเตอร์โดยการเลือกสม่ำเสมอโดยการสุ่มจากภัณฑ์เกลาเมื่อและอื่น ๆ การตั้งค่า 0 ชุด{u}wwjvjjIwj=vjuujjIuj=0w=v+u

ขั้นตอนที่ 3 ไม่จำเป็นในกรณีไบนารี


ตัวอย่าง

นี่คือการRดำเนินการเพื่อแสดงให้เห็นถึง

rHamming <- function(N=1, a=c(1,1,1), n=2, origin) {
  # Draw N random values from the distribution f_a^v where the ground ring
  # is {0,1,...,n-1} mod n and the vector space has dimension j = length(a)-1.
  j <- length(a) - 1
  if(missing(origin)) origin <- rep(0, j)

  # Draw radii `i` from the marginal distribution of the spherical radii.
  f <- sapply(0:j, function(i) (n-1)^i * choose(j,i) * a[i+1])
  i <- sample(0:j, N, replace=TRUE, prob=f)

  # Helper function: select nonzero elements of 1:(n-1) in exactly i places.
  h <- function(i) {
    x <- c(sample(1:(n-1), i, replace=TRUE), rep(0, j-i))
    sample(x, j, replace=FALSE)
  }

  # Draw elements from the conditional distribution over the spheres
  # and translate them by the origin.
  (sapply(i, h) + origin) %% n
}

เป็นตัวอย่างของการใช้งาน:

test <- rHamming(10^4, 2^(11:1), origin=rep(1,10))
hist(apply(test, 2, function(x) sum(x != 0)))

สิ่งนี้ใช้เวลาวินาทีในการดึงอิลิเมนต์iidจากการแจกแจงโดยที่ , (กรณีไบนารี),และจะลดลงแบบทวีคูณ0.2104fa(v)J=10n=2v=(1,1,,1)a=(211,210,,21)

(อัลกอริทึมนี้ไม่ต้องการให้ลดลงดังนั้นมันจะสร้างความแตกต่างแบบสุ่มจากตระกูลที่ตั้งใด ๆไม่ใช่เฉพาะที่ unimodal)a


ขอบคุณสำหรับสิ่งนี้! ระยะห่างของ Hamming ในกรณีนี้มีเพียงในจำกัด ไว้ที่ยอดลูกบาศก์ ในบริบทนั้น Hamming distance กำลังทำหน้าที่แบบ isotropically ออกไปจากที่ฉันเดาว่าสิ่งเหล่านี้ซับซ้อนเพราะฉันมีมากกว่าค่าแตกต่างกันสำหรับการวัดระยะทางของฉัน? มีความคิดเห็นทั่วไปเกี่ยวกับเรื่องนี้ไหม? L1RJJ
ผู้ชาย

ใช่: ทางเลือกของฟังก์ชั่นระยะไกลจะขึ้นอยู่กับสิ่งที่มีค่าในแทน เนื่องจากคำถามได้ถูกสร้างขึ้นมาอย่างเป็นนามธรรมเราไม่มีอะไรจะทำเพื่อสร้างความคิดเห็นเกี่ยวกับสิ่งที่จะเป็นทางเลือกที่ดี ระยะทาง Hamming จะเป็นที่เหมาะสมสำหรับการระบุค่าและบางทีอาจจะในกรณีอื่น ๆ ด้วย แต่ระยะทางอื่น ๆ อาจทำงานได้ดีขึ้นเมื่อมีความรู้สึกโดยธรรมชาติของระยะทางสำหรับชุด\} ในกรณีฐานสองมันยากที่จะพูดถึงระยะทาง Hamming: พวกมันค่อนข้างทั่วไปแล้ว {1,2,,n}{1,2,,n}n=2
whuber

1

ตัวอย่างจากกระบวนการจุด k- ดีเทอแรนทาลโมเดลจำลองการกระจายข้ามเซ็ตย่อยที่ส่งเสริมความหลากหลายเช่นว่าไอเท็มที่คล้ายกันมีโอกาสน้อยที่จะเกิดขึ้นพร้อมกันในตัวอย่าง อ้างถึงการสุ่มตัวอย่างกระบวนการกำหนดระดับ K โดย Alex Kulesza, Ben Taskar

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