আমার বুটস্ট্র্যাপের বিরতিতে কেন ভয়ঙ্কর কভারেজ থাকে?


29

আমি একটি শ্রেণি প্রদর্শন করতে চেয়েছিলাম যেখানে আমি একটি টি-ইন্টারভালকে বুটস্ট্র্যাপের ব্যবধানের সাথে তুলনা করি এবং উভয়ের কভারেজ সম্ভাবনার গণনা করি। আমি ডেটাটি একটি স্কিউড ডিস্ট্রিবিউশন থেকে আসতে চেয়েছিলাম তাই আমি exp(rnorm(10, 0, 2)) + 1স্থানান্তরিত লগমনরমাল থেকে 10 মাপের নমুনা হিসাবে ডেটা উত্পন্ন করতে বেছে নিয়েছি । আমি 1000 টি নমুনা আঁকার জন্য একটি স্ক্রিপ্ট লিখেছিলাম এবং প্রতিটি নমুনার জন্য 1000 প্রতিলিপিগুলির উপর ভিত্তি করে 95% টি-ইন্টারভেল এবং 95% বুটস্ট্র্যাপ পারসেন্টাইল ব্যবধান উভয়ই গণনা করি।

আমি যখন স্ক্রিপ্টটি চালনা করি, উভয় পদ্ধতিতে খুব একই ধরণের অন্তর দেওয়া হয় এবং উভয়েরই 50-60% এর কভারেজ সম্ভাবনা থাকে। আমি অবাক হয়েছি কারণ আমি ভেবেছিলাম বুটস্ট্র্যাপের ব্যবধানটি আরও ভাল হবে।

আমার প্রশ্ন, আমি আছে

  • কোডে ভুল করেছেন?
  • অন্তর অন্তর গণনা করতে ভুল করেছেন?
  • বুটস্ট্র্যাপের ব্যবধানটি আরও ভাল কভারেজের বৈশিষ্ট্য পাওয়ার আশা করে ভুল করেছে?

এছাড়াও, এই পরিস্থিতিতে আরও নির্ভরযোগ্য সিআই নির্মাণ করার কোনও উপায় আছে কি?

 tCI.total <- 0
 bootCI.total <- 0
 m <- 10 # sample size
 true.mean <- exp(2) + 1

for (i in 1:1000){
 samp <- exp(rnorm(m,0,2)) + 1
 tCI <- mean(samp) + c(1,-1)*qt(0.025,df=9)*sd(samp)/sqrt(10)

 boot.means <- rep(0,1000)
 for (j in 1:1000) boot.means[j] <- mean(sample(samp,m,replace=T))
 bootCI <- sort(boot.means)[c(0.025*length(boot.means), 0.975*length(boot.means))]

 if (true.mean > min(tCI) & true.mean < max(tCI)) tCI.total <- tCI.total + 1
 if (true.mean > min(bootCI) & true.mean < max(bootCI)) bootCI.total <- bootCI.total + 1 
}
tCI.total/1000     # estimate of t interval coverage probability
bootCI.total/1000  # estimate of bootstrap interval coverage probability

3
পক্ষপাতগুলি সনাক্ত এবং সংশোধন করার জন্য লোকেরা প্রায়শই বুটস্ট্র্যাপের অন্য ব্যবহারটি ভুলে যায় । আমি সন্দেহ করি যে আপনি যদি আপনার বুটস্ট্র্যাপিংয়ের মধ্যে পক্ষপাত সংশোধন অন্তর্ভুক্ত করেন তবে আপনি সিআই এর থেকে অনেক ভাল পারফরম্যান্স পেতে পারেন।
শুশুক

@ শুভ: চমৎকার পয়েন্ট, +1। যতদূর আমার মনে আছে, ডেভিসন ও হিঙ্কলি দ্বারা বুটস্ট্র্যাপ পদ্ধতি এবং তাদের অ্যাপ্লিকেশনগুলি বুটস্ট্র্যাপের পক্ষপাত সংশোধন এবং অন্যান্য উন্নতির একটি সুন্দর এবং অ্যাক্সেসযোগ্য ভূমিকা দেয়।
এস.কোলাসা - মনিকা

1
এটি অন্যান্য বুটস্ট্র্যাপ বৈকল্পিকগুলি চেষ্টা করার মতো, বিশেষত বেসিক বুটস্ট্র্যাপ।
ফ্র্যাঙ্ক হ্যারেল

3
বুটস্ট্র্যাপিং একটি বৃহত-নমুনা পদ্ধতি। বড় নয়, বিশেষত লগ-স্বাভাবিক ডেটার জন্যn=10
ক্লিফ এবি

উত্তর:


16

ক্যান্টো, ডেভিসন, হিঙ্কলি এবং ভেনচুরা (২০০)) এর বুটস্ট্র্যাপ ডায়াগনস্টিকস এবং প্রতিকারগুলি প্রস্থানটির যৌক্তিক বিন্দু বলে মনে হচ্ছে। তারা বুটস্ট্র্যাপটি ভেঙে ফেলতে পারে এবং একাধিক উপায় নিয়ে আলোচনা করে - আরও গুরুত্বপূর্ণভাবে এখানে - ডায়াগনস্টিকস এবং সম্ভাব্য প্রতিকারগুলি সরবরাহ করে:

  1. outliers
  2. ভুল পুনর্নির্মাণের মডেল
  3. Nonpivotality
  4. বুটস্ট্র্যাপ পদ্ধতির অসঙ্গতি

এই পরিস্থিতিতে 1, 2 এবং 4 নিয়ে আমি কোনও সমস্যা দেখছি না। @ বেন ওগোরেক নোট হিসাবে (যদিও আমি @ গ্লেন_ বি এর সাথে একমত যে স্বাভাবিকতা আলোচনাটি একটি লাল রঙের হারিং হতে পারে), বুটস্ট্র্যাপের বৈধতা আমরা যে স্ট্যাটিস্টিক আগ্রহী তা নির্ভর করে।

ক্যান্টি এট আল-এ ধারা 4। প্রতিটি বুটস্ট্রাপ রেজাল্টের মধ্যে প্যারামিটার অনুমানের জন্য পক্ষপাত এবং প্রকরণের পরিমাপ পাওয়ার জন্য পুনরায় মডেলিং-ইন-রেসামালগুলি প্রস্তাব দেয় । পি থেকে সূত্রগুলি প্রতিলিপি করতে এখানে কোড। নিবন্ধের 15:

library(boot)
m <- 10 # sample size
n.boot <- 1000
inner.boot <- 1000

set.seed(1)
samp.mean <- bias <- vars <- rep(NA,n.boot)
for ( ii in 1:n.boot ) {
    samp <- exp(rnorm(m,0,2)) + 1
    samp.mean[ii] <- mean(samp)
    foo <- boot(samp,statistic=function(xx,index)mean(xx[index]),R=inner.boot)
    bias[ii] <- mean(foo$t[,1])-foo$t0
    vars[ii] <- var(foo$t[,1])
}

opar <- par(mfrow=c(1,2))
    plot(samp.mean,bias,xlab="Sample means",ylab="Bias",
        main="Bias against sample means",pch=19,log="x")
    abline(h=0)
    plot(samp.mean,vars,xlab="Sample means",ylab="Variance",
        main="Variance against sample means",pch=19,log="xy")
par(opar)

বুটস্ট্র্যাপ ডায়াগনস্টিক্স

লগ স্কেলগুলি নোট করুন - লগ ছাড়াই এটি আরও বেশি স্পষ্ট। আমরা সুন্দরভাবে দেখতে পাই যে কীভাবে বুটস্ট্র্যাপের গড় অনুমানের বৈকল্পিকতা বুটস্ট্র্যাপ নমুনার মধ্য দিয়ে চলে যায়। আমার কাছে এটি ধূমপানের বন্দুকের মতো যথেষ্ট মনে হচ্ছে স্বল্প আত্মবিশ্বাসের ব্যবধান কভারেজের জন্য অপরাধী হিসাবে অপ্রচলিত ব্যক্তিকে দোষ দেয়।

তবে, আমি আনন্দের সাথে স্বীকার করব যে কেউ প্রচুর উপায়ে অনুসরণ করতে পারে। উদাহরণস্বরূপ, আমরা কীভাবে নির্দিষ্ট বুটস্ট্র্যাপের প্রতিলিপি থেকে আস্থার ব্যবধানে সত্যিকারের গড়টি নির্দিষ্ট প্রতিরূপের গড়ের উপর নির্ভর করে তা কীভাবে পর্যালোচনা করতে পারি।

প্রতিকার হিসাবে, ক্যান্টি এট আল। রূপান্তরগুলি নিয়ে আলোচনা করুন, এবং লগারিদমগুলি এখানে মনে আসবে (উদাঃ বুটস্ট্র্যাপ এবং আত্মবিশ্বাসের ব্যবধানগুলি গড়ের জন্য নয়, লগ-ইন করা ডেটার গড়ের জন্য), তবে আমি সত্যিই এটি কার্যকর করতে পারিনি।

ক্যান্টি এট আল। কীভাবে একজন গুরুত্বপূর্ণ নমুনা ও স্মুথিংয়ের পাশাপাশি পিভট প্লটগুলিতে আত্মবিশ্বাসের ব্যান্ড যুক্ত করতে পারে তার দ্বারা অভ্যন্তরীণ বুটস্ট্র্যাপের সংখ্যা এবং বাকী আওয়াজ উভয় হ্রাস করতে পারে discuss

স্মার্ট শিক্ষার্থীর জন্য এটি মজাদার থিসিস প্রকল্প হতে পারে। আমি যেখানে ভুল হয়ে গিয়েছিলাম সেই সাথে যে কোনও সাহিত্যের জন্য আমি যে কোনও পয়েন্টারের প্রশংসা করব। এবং আমি diagnosticএই প্রশ্নের ট্যাগ যুক্ত করার স্বাধীনতা গ্রহণ করব ।


13

μ^μ
μ^t
mμ^μσ^

তারপরে পুরো সেটআপটি সম্পর্কে আমি আরও কিছু ভেবেছি। কেবলমাত্র 10 টি পর্যবেক্ষণ এবং একটি অত্যন্ত স্কিউড বিতরণ সহ, তবে কি অবাস্তবভাবে গড় অনুমান করা অসম্ভব নয় যে সঠিক কভারেজের সাথে আত্মবিশ্বাসের অন্তরগুলি তৈরি করা যাক?

e2+1=8.39P(X2)=0.84XN(0,4)0.840.8410=0.178। সুতরাং 18% এর চেয়ে সামান্য কম ক্ষেত্রে, বৃহত্তম পর্যবেক্ষণটি গড় থেকে ছোট smaller ০.৮২ এর চেয়ে বেশি কভারেজ পাওয়ার জন্য আমাদের পক্ষে একটি আত্মবিশ্বাসের ব্যবধান তৈরির দরকার যা গড় পর্যবেক্ষণের বাইরেও প্রসারিত। বিতরণটি অত্যন্ত তাত্পর্যপূর্ণ এমন পূর্বে অনুমান ব্যতীত কীভাবে এই ধরনের নির্মাণ করা যেতে পারে (এবং ন্যায়সঙ্গত) তা কল্পনা করতে আমার বেশ কষ্ট হয়েছে। তবে আমি কোন পরামর্শ স্বাগত জানাই।


আমি আপনার সাথে একমত. আমি এই বিতরণ থেকে একটি নমুনা পেয়েছি এমন ব্যক্তির দৃষ্টিকোণ থেকে সত্যই এটি ভাবতে চেয়েছিলাম। আমি কীভাবে জানব যে এই ক্ষেত্রে blithely বুটস্ট্র্যাপ ব্যবহার অনিরাপদ? কেবলমাত্র আমি ভাবতে পারি যে বিশ্লেষণ করার আগে আমি লগগুলি ভালভাবে গ্রহণ করতে পারি, তবে অন্য উত্তরদাতাদের একজন বলেছেন যে এটি সত্যিই সহায়তা করে না।
ফ্লাউন্ডারিয়ার

1
আপনি একা 10 ডেটা পয়েন্ট থেকে এটি নিরাপদ বা অনিরাপদ কিনা তা জানতে পারবেন না। আপনি যদি সঙ্কোচ বা ভারী লেজ সন্দেহ করেন তবে সমাধানটি গড়ের চেয়ে আলাদা প্যারামিটারে ফোকাস করা হতে পারে। উদাহরণস্বরূপ লগ-মধ্য বা মিডিয়ান। আপনি অতিরিক্ত অনুমান না করলে এটি আপনাকে গড়ের (বা আত্মবিশ্বাসের ব্যবধানের) জন্য কোনও অনুমান দেয় না তবে বিতরণের লেজগুলির প্রতি সংবেদনশীল কোনও প্যারামিটারে মনোযোগ কেন্দ্রীভূত করার পক্ষে এটি আরও ভাল ধারণা হতে পারে।
এনআরএইচ

6

গণনাগুলি সঠিক ছিল, আমি সুপরিচিত প্যাকেজ বুটের সাথে ক্রস-চেক করেছি । অতিরিক্তভাবে আমি বিসিএ-ইন্টারভাল (ইফ্রন দ্বারা) যুক্ত করেছি, পার্সেন্টাইল বুটস্ট্র্যাপ ব্যবধানের পক্ষপাতিত্ব-সংশোধিত সংস্করণ:

for (i in 1:1000) {
  samp <- exp(rnorm(m, 0, 2)) + 1

  boot.out <- boot(samp, function(d, i) sum(d[i]) / m, R=999)
  ci <- boot.ci(boot.out, 0.95, type="all")

  ##tCI <- mean(samp) + c(1,-1)*qt(0.025,df=9)*sd(samp)/sqrt(10)
  tCI <- ci$normal[2:3]
      percCI <- ci$perc[4:5]
  bcaCI <- ci$bca[4:5]
      boottCI <- ci$student[4:5]

  if (true.mean > min(tCI) && true.mean < max(tCI)) tCI.total <- tCI.total + 1
  if (true.mean > min(percCI) && true.mean < max(percCI)) percCI.total <- percCI.total + 1 
  if (true.mean > min(bcaCI) && true.mean < max(bcaCI)) bcaCI.total <- bcaCI.total + 1
}

tCI.total/1000     # estimate of t interval coverage probability
0.53
percCI.total/1000  # estimate of percentile interval coverage probability
0.55
bcaCI.total/1000  # estimate of BCa interval coverage probability
0.61

আমি ধরে নিলাম অন্তরগুলি আরও ভাল হবে যদি মূল নমুনার আকার 10 এর বেশি হয় তবে 20 বা 50 বলুন।

তবুও বুটস্ট্র্যাপ-টি পদ্ধতি সাধারণত স্কিউড পরিসংখ্যানগুলির জন্য আরও ভাল ফলাফলের দিকে পরিচালিত করে। তবে এটিতে নেস্টেড লুপ প্রয়োজন এবং সেইজন্য আরও 20 + গুণ বেশি গণনার সময়।

হাইপোথিসিস পরীক্ষার জন্য এটিও খুব গুরুত্বপূর্ণ যে 1-পার্শ্বযুক্ত কভারেজগুলি ভাল। সুতরাং কেবলমাত্র দ্বি-পার্শ্বযুক্ত কভারেজগুলি দেখলে প্রায়শই বিভ্রান্তিকর হতে পারে।


1
n<100

5

আমিও এ সম্পর্কে বিভ্রান্ত হয়ে পড়েছিলাম এবং আমি 1996 সালের ডিক্সিসিও এবং ইফ্রন পেপার বুটস্ট্র্যাপ কনফিডেন্স ইন্টারভালগুলিতে এর জন্য অনেক কিছুই প্রদর্শন না করে ব্যয় করেছি।

এটি আসলে একটি সাধারণ উদ্দেশ্য পদ্ধতি হিসাবে আমাকে বুটস্ট্র্যাপ কম মনে করতে পরিচালিত করেছিল। আমি এটিকে এমন কিছু হিসাবে ভাবতাম যা আপনাকে সত্যই আটকে গেলে জ্যাম থেকে আপনাকে বের করে আনবে। তবে আমি এর নোংরা ছোট্ট গোপনীয়তাটি শিখেছি: বুটস্ট্র্যাপের আত্মবিশ্বাসের ব্যবধানগুলি কোনও না কোনওভাবে স্বাভাবিকতার উপর ভিত্তি করে। আমাকে ব্যাখ্যা করার অনুমতি দিন।

xN(μ,σ2)
σ
z=xμσN(0,1)
μPr(1.96xμσ1.96)=0.95

আপনি যখন আত্মবিশ্বাসের ব্যবধানের সাথে সম্পর্কিত সাধারণ বন্টনের শতকরা হারকে ন্যায্যতা সম্পর্কে চিন্তা করেন, এটি সম্পূর্ণরূপে এই সুবিধাজনক মূল ভিত্তিক উপর ভিত্তি করে। স্বেচ্ছাসেবী বিতরণের জন্য, নমুনা বিতরণ এবং আত্মবিশ্বাসের ব্যবধানের শতকরা অংশের মধ্যে কোনও তাত্ত্বিক যোগসূত্র নেই এবং বুটস্ট্র্যাপের নমুনা বিতরণের কাঁচা অনুপাত গ্রহণ করলে তা কাটবে না।

সুতরাং ইফ্রনের বিসিএ (পক্ষপাত সংশোধন) অন্তরগুলি আনুমানিক স্বাভাবিকতা পেতে ট্রান্সফর্মেশনগুলি ব্যবহার করে এবং বুটস্ট্র্যাপ-টি পদ্ধতিগুলি ফলাফলের টি-পরিসংখ্যানকে প্রায় নির্ভরযোগ্য বলে নির্ভর করে। এখন বুটস্ট্র্যাপ মুহূর্তের মধ্যে থেকে নরকের অনুমান করতে পারে এবং আপনি সর্বদা স্বাভাবিকতা ধরে নিতে পারেন এবং স্ট্যান্ডার্ড +/- 2 * SE ব্যবহার করতে পারেন। তবে বুটস্ট্র্যাপের সাথে অ-প্যারাম্যাট্রিকের যে সমস্ত কাজ চলছে সেগুলি বিবেচনা করে, এটি বেশ ন্যায্য বলে মনে হয় না, তাই না?


2
এটি আমি কিছু মিস করেছি, তবে বুটস্ট্র্যাপিংটি মূল বা নিকটবর্তী মূল পরিমাণের সাথে জড়িত তা সাধারণতার সাথে কোনও সম্পর্ককে বোঝায় না। মূল পরিমাণে নির্দিষ্ট পরিস্থিতিতে সমস্ত ধরণের বিতরণ থাকতে পারে। আপনার দ্বিতীয় শেষ অনুচ্ছেদে বিচ্ছিন্ন বাক্যটি কীভাবে অনুসরণ করে তাও আমি দেখতে পাই না।
গ্লেন_বি -রিনস্টেট মনিকা

1
তাহলে কীভাবে স্বাভাবিকতা সম্পর্কিত জোর অনুসরণ করা যায়?
গ্লেন_বি -রিনস্টেট মনিকা

1
যেহেতু প্রতিটি অবিচ্ছিন্ন ডিস্ট্রিবিউশন স্বাভাবিকতার ( সর্বদা প্রমিত স্বাভাবিক) -এর যথাযথ রূপান্তর হয় , তাই দেখে মনে হচ্ছে আপনি কেবলমাত্র সমস্ত অবিচ্ছিন্ন বিতরণকে একটি সাধারণ আনুমানিকের মূল হিসাবে চিহ্নিত করেছেন। FΦ1[F(X)]
গ্লেন_বি -রিনস্টেট মনিকা

2
আমরা যদি ইতিমধ্যে এটি না জানি তবে সনাক্ত করা তুচ্ছ নয়; মূল বক্তব্যটি হ'ল এই ধরণের রূপান্তরগুলি স্পষ্টভাবে বিদ্যমান। ইফ্রন আরও ভাল অন্তর পেতে চেষ্টা করছে; কেবলমাত্র তিনি রূপান্তর-থেকে-প্রায়-স্বাভাবিক / মেক-অ্যান-ইন্টারভেল / ট্রান্সফর্ম-ব্যাক হয়ে নিজেকে বোঝান না যে তিনি স্বাভাবিকতার সাথে কোনও বিশেষ সংযোগ অনুমান করছেন। F
গ্লেন_বি -রিনস্টেট মনিকা

2
@ গ্লেেন_ বি যুক্ত করতে: পদ্ধতিটি সঠিক প্রমাণ করার জন্য কেবলমাত্র একটি সাধারণ বিতরণে রূপান্তর থাকা দরকার। পদ্ধতিটি ব্যবহার করার জন্য আপনাকে এটি সন্ধান করার দরকার নেই। অতিরিক্তভাবে, আপনি যদি সাধারণ বিতরণ পছন্দ না করেন তবে আপনি সম্পূর্ণ প্রমাণটি কিছু অন্যান্য প্রতিসম, ক্রমাগত বিতরণ দিয়ে আবারও লিখতে পারেন rite সাধারণ বিতরণগুলির ব্যবহার প্রযুক্তিগতভাবে কার্যকর, তবে কঠোরভাবে প্রয়োজনীয় নয়, এটি ডেটার উত্স, বা নমুনাটির অর্থ সম্পর্কে কিছুই বলে না।
পিটার

0

দ্য আমেরিকান স্ট্যাটিস্টিস্টিয়ান-এ টিম হেস্টারবার্গের নিবন্ধটি http://www.timhesterberg.net/bootstrap#TOC-What-Teachers-Should-Know-about-the-Bootstrap:-Resampling-in-the-Undergraduate-Statics- Corricule এ দেখুন

মূলত, বুটস্ট্র্যাপ পারসেন্টাইল ব্যবধানে স্কিউ ডেটার জন্য শক্তিশালী কভারেজ সম্ভাবনা নেই যদি না এন বড় হয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.