বুটস্ট্র্যাপিংয়ে .632+ নিয়মটি কী?


107

এখানে @ গুং .632+ রুলের উল্লেখ করে। একটি দ্রুত গুগল অনুসন্ধান এই নিয়মের অর্থ কী এবং কী উদ্দেশ্যে এটি ব্যবহার করা হয় তা সহজেই বুঝতে সহজ উত্তর পাওয়া যায় না। কেউ কি .632+ বিধিটি ব্যাখ্যা করতে পারেন?

উত্তর:


115

আমি 0.632 এর অনুমানকারীকে পেয়ে যাব, তবে এটি কিছুটা দীর্ঘ উন্নয়ন হবে:

ধরুন আমরা ভবিষ্যদ্বাণী করা করতে চান সঙ্গে ফাংশন ব্যবহার করে , যেখানে কিছু প্যারামিটার যে ডেটা ব্যবহার অনুমান করা হয় উপর নির্ভর করে হতে পারে (\ mathbf {ওয়াই}, \ mathbf {x}) , যেমন চ (\ mathbf {x}) = \ mathbf {x} \ mathbf {\ বিটা}এক্সYXff(Y,X)f(X)=Xβ

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

err¯=1Ni=1NL(yi,f(xi))
L(xi,yi)ferr¯f

প্রত্যাশিত অতিরিক্ত-নমুনা পূর্বাভাস ত্রুটিটি অনুমান করার জন্য প্রায়শই আমরা ক্রস-বৈধকরণ ব্যবহার করি (আমাদের প্রশিক্ষণ সংস্থায় আমাদের মডেল ডেটাতে কতটা ভাল করে?)

Err=E[L(Y,f(X))]

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

ErrCV=1Ni=1NL(yi,fκ(i)(xi))
κifκ(i)(xi)xiκ(i)

এই অনুমানকটি সত্যিকারের পূর্বাভাস ত্রুটির জন্য আনুমানিক পক্ষপাতহীন এবং যখন এবং এর বৃহত্তর বৈচিত্র রয়েছে এবং বৃহত্তর জন্য আরও গণনামূলকভাবে ব্যয়বহুল । সুতরাং আবার আমরা খেলতে পক্ষপাত – বৈকল্পিক বাণিজ্য বন্ধ দেখতে পাই।K=NK

ক্রস-বৈধকরণের পরিবর্তে আমরা অতিরিক্ত নমুনা পূর্বাভাস ত্রুটির অনুমান করতে বুটস্ট্র্যাপ ব্যবহার করতে পারি। বুটস্ট্র্যাপ পুনরায় মডেলিং কোনও পরিসংখ্যানের নমুনা বিতরণ অনুমান করতে ব্যবহার করা যেতে পারে। আমাদের প্রশিক্ষণ ডেটা থেকে থাকে তবে , তাহলে আমরা গ্রহণ মনে করতে পারেন বুটস্ট্র্যাপ নমুনা এই সেট থেকে (প্রতিস্থাপন সঙ্গে) যেখানে প্রতিটি হ'ল নমুনার একটি সেট । অতিরিক্ত নমুনা পূর্বাভাস ত্রুটির অনুমান করতে এখন আমরা আমাদের বুটস্ট্র্যাপ নমুনাগুলি ব্যবহার করতে পারি: যেখানে এ পূর্বাভাস মান করার মডেল ফিট থেকেX=(x1,,xN)BZ1,,ZBZiN

Errboot=1Bb=1B1Ni=1NL(yi,fb(xi))
fb(xi)xib ম বুটস্ট্র্যাপ ডেটাসেট। দুর্ভাগ্যবশত, এই একটি বিশেষ ভাল মূল্নির্ধারক কারণ বুটস্ট্র্যাপ নমুনা উত্পাদন ব্যবহৃত নয় অন্তর্ভুক্ত থাকতে পারে । লিভ-ওয়ান-আউট বুটস্ট্র্যাপ অনুমানকারী ক্রস-বৈধকরণের অনুকরণ করে একটি উন্নতি প্রস্তাব করে এবং এরূপ সংজ্ঞা দেওয়া হয়: যেখানে the বুটস্ট্র্যাপ নমুনাগুলির সূচকের সেট , এবং পর্যবেক্ষণ ধারণ করবেন না যেমন নমুনার সংখ্যা। fb(xi)xi
Errboot(1)=1Ni=1N1|Ci|bCiL(yi,fb(xi))
Cii|Ci|Errboot(1)অত্যধিক মানসিক সমস্যা সমাধান করে তবে তবুও পক্ষপাতদুষ্ট (এইটি upর্ধ্বমুখী পক্ষপাতদুষ্ট)। প্রতিস্থাপনের সাথে নমুনা দেওয়ার ফলে বুটস্ট্র্যাপের নমুনাগুলিতে স্বতন্ত্র পর্যবেক্ষণের কারণে পক্ষপাত হয়। প্রতিটি নমুনায় স্বতন্ত্র পর্যবেক্ষণের গড় সংখ্যা প্রায় ( কেন প্রতিটি বুটস্ট্র্যাপ নমুনায় প্রায় দুই তৃতীয়াংশ পর্যবেক্ষণ থাকে কেন তার ব্যাখ্যাটির জন্য এই উত্তরটি দেখুন )। পক্ষপাতদুষ্ট সমস্যা সমাধানের জন্য, ইফ্রন এবং তিবশিরানী 0.632 এর প্রাক্কলনকর্তার প্রস্তাব করেছেন: এর যেখানে0.632N
Err.632=0.368err¯+0.632Errboot(1)
err¯=1Ni=1NL(yi,f(xi))
ভবিষ্যদ্বাণী ত্রুটির নির্দোষ অনুমান যা প্রায়শই প্রশিক্ষণের ত্রুটি বলে। ধারণাটি নিম্নতর পক্ষপাতদুষ্ট অনুমান এবং একটি upর্ধ্বমুখী পক্ষপাতমূলক অনুমান গড়ে গড়ে।

তবে, যদি আমাদের একটি অতিমাত্রার তুলনায় পূর্বাভাস ফাংশন থাকে (যেমন এরর ) তবে এমনকি .63৩২ এর অনুমানক নিম্নমুখী হবে। .632+ মূল্নির্ধারক মধ্যে একটি কম পক্ষপাতমূলক আপস ডিজাইন করা হয়েছে এবং । সাথে এরর যেখানে হ'ল নো-ইনফরমেশন ত্রুটি হার, এর সমস্ত সম্ভাব্য সংমিশ্রণের উপর পূর্বাভাস মডেলটি মূল্যায়ন করে অনুমান করা হয় এবং ভবিষ্যদ্বাণীকারীদের লক্ষ্য করে ।err¯=0err¯Errboot(1)

Err.632+=(1w)err¯+wErrboot(1)
w=0.63210.368RandR=Errboot(1)err¯γerr¯
γyixi

γ=1N2i=1Nj=1NL(yi,f(xj))

এখানে আপেক্ষিক ওভারফিটিং হারের পরিমাপ করে। যদি কোনও ওভারফিটিং না থাকে (আর = 0, যখন ) এটি .632 অনুমানের সমান।RErrboot(1)=err¯


2
এগুলি হ'ল @ পিপিয়ারস ভাল প্রশ্ন, তবে তারা এই থ্রেডের কেন্দ্রীয় বিষয় থেকে কিছুটা দূরে সরে গেছে। সিভি সংগঠন অনুসারে এগুলি নতুন থ্রেডে রাখাই আরও ভাল হবে, যাতে পরবর্তীকালে সেই তথ্যগুলি খুঁজে পেতে এবং ব্যবহার করা মানুষের পক্ষে সহজতর হয়।
গাং



1
@rpierce আমি দুঃখিত যদি আমি আমার প্রশ্নটি অনুসরণ করতে কিছুটা কঠিন করে তুলি। আপনার মডেলের এটি ফিট করতে ব্যবহৃত ডেটার সাথে তুলনা করছে। স্কোয়ার ত্রুটি ক্ষতির জন্য যা কেবলমাত্রerr¯=1Ni=1NL(yi,f(xi))1ni=1n(yiy^i)2
বিডিয়নভিক

1
@ আরপিয়ার্স, হ্যাঁ! আমি কিছুটা সাধারণ ছিলাম কারণ কিছু শ্রেণির নোট থেকে আমি এই উপাদানটি প্রচুর পুনর্ব্যবহার করছি।
বিডিওনোভিক

53

আপনি এই 1 টি কাগজের 3 নং বিভাগে আরও তথ্য পাবেন । কিন্তু সংক্ষেপ, যদি আপনি কল একটি নমুনা থেকে নম্বর এলোমেলোভাবে এবং প্রতিস্থাপন সঙ্গে টানা, আনুমানিক গড়ে ধারণ অনন্য উপাদান।Sn{1:n}S(1e1)n0.63212056n

যুক্তিটি নিম্নরূপ। আমরা পূরণ স্যাম্পলিং দ্বারা বার (এলোমেলোভাবে এবং প্রতিস্থাপন সঙ্গে) থেকে । একটি নির্দিষ্ট সূচক বিবেচনা করুন । S={s1,,sn}i=1,,n{1:n}m{1:n}

তারপর:

P(si=m)=1/n

এবং

P(sim)=11/n

এবং এটি সত্য (স্বজ্ঞাতভাবে, যেহেতু আমরা প্রতিস্থাপনের সাথে নমুনা নিই, সম্ভাবনাগুলি উপর নির্ভর করে না )1ini

এইভাবে

P(mS)=1P(mS)=1P(i=1nsim)=1i=1nP(sim)=1(11/n)n1e1

অনুমানের গুণমান (যা উপর নির্ভর করে ) পরীক্ষামূলকভাবে পরীক্ষা করতে আপনি এই সামান্য সিমুলেশনটিও বহন করতে পারেন :n

n <- 100
fx01 <- function(ll,n){
    a1 <- sample(1:n, n, replace=TRUE)
    length(unique(a1))/n
}
b1 <- c(lapply(1:1000,fx01,n=100), recursive=TRUE)
mean(b1)

1. ব্র্যাডলি এফ্রন এবং রবার্ট তিবশিরানী (1997)। ক্রস-বৈধকরণের উন্নতি: .632+ বুটস্ট্র্যাপ পদ্ধতিআমেরিকান স্ট্যাটিস্টিকাল অ্যাসোসিয়েশন জার্নাল , খণ্ড। 92, নং 438, পৃষ্ঠা 548--560।


3
রেফারেন্সে আপনার জন্য এখানে একটি দস্তাবেজ রয়েছে - stat.washington.edu/courses/stat527/s14/readings/…

1
(+1) খুব ভাল। আমি স্বরলিপিটি আরও কিছুটা স্ট্যান্ডার্ড করব। ডেটা: । আইআইডি র্যান্ডম ভেরিয়েবলগুলি উইথ । ফলাফল: । (x1,,xn)S1,,SnP(Si=k)=1nI{1,,n}(k)P(i=1n{Si=k})=1P(i=1n{Sik})=1i=1nP{Sik}=1(11/n)n11/e63.21%
জেন

4
@ আরপিয়ার্স: ঠিক আছে। উত্তরটি বর্তমানে উল্লেখ করতে ব্যর্থ যে "স্পষ্ট" বিটটি হ'ল । 1e10.63212056
ইলমারি করোনেন

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

1
@ আরপিয়ার্স: ক্যালিন ডায়নের উদ্ধৃতি দিতে, " সময়ের চেয়ে পুরনো গল্প / ছড়া / বিউটি অ্যান্ড জানোয়ারের মতো পুরান Tale " : পি
নিক স্টাওনার

8

আমার অভিজ্ঞতায়, প্রাথমিকভাবে সিমুলেশনগুলির উপর ভিত্তি করে, 0.632 এবং 0.632+ বুটস্ট্র্যাপ বৈকল্পিকগুলি কেবলমাত্র একটি অনুচিত যথাযথ স্কোরিং নিয়মের ব্যবহারের ফলে গুরুতর সমস্যার কারণে প্রয়োজন হয়েছিল, যথা অনুপাতটি সঠিকভাবে "শ্রেণিবদ্ধ" হয়। আপনি যখন যথাযথ (যেমন, ডিভিল্যান্স-ভিত্তিক বা ব্রিয়ার স্কোর) বা আধা-যথাযথ (যেমন, ইন্ডেক্স = অরোক) স্কোরিং নিয়ম ব্যবহার করেন, তখন স্ট্যান্ডার্ড ইফ্রন-গং আশাবাদ বুটস্ট্র্যাপ ঠিক ঠিক কাজ করে।c


3
আপনি এখানে ফ্রাঙ্ক বলেছিলেন এমন বেশিরভাগ জিনিস আমি বুঝতে পারি বলে আমি মনে করি না। আপনি কি স্পষ্ট করতে ইচ্ছুক হবে? মনে হচ্ছে আপনার অবদানের জন্য কিছু অনন্য এবং গুরুত্বপূর্ণ আছে।
রাসেলপিয়ার্স

আপনি যদি একটি নির্দিষ্ট প্রশ্ন করতে পারেন তবে প্রসারিত হয়ে খুশি lad
ফ্র্যাঙ্ক হ্যারেল

1
এই স্কোরিং নিয়মগুলি ছিল ... বুটস্ট্র্যাপ ফলাফলের গুণমান বিচার করে? আপনি কী এমন কোনও লিঙ্ক সরবরাহ করতে পারেন যা অনুপাতের "শ্রেণিবদ্ধ" সঠিকভাবে স্কোরিং বিধি বর্ণনা করে, আমি কী ধরণের পশু হতে পারে তা ভাবতে সমস্যা হচ্ছে। গুগলে "এফ্রন-গং আশাবাদ" এর শীর্ষ ফলাফলগুলির মধ্যে বিপুল সংখ্যাগরিষ্ঠরা আপনার পোস্ট বলে মনে হচ্ছে ... আমি যদি বাছাইপর্ব ছাড়াই "বুটস্ট্র্যাপ" বলি তবে এর থেকে কীভাবে আলাদা? কোন এফ্রন এবং গং নিবন্ধটি আমার সন্ধান করা উচিত? বেশ কয়েকটি আছে বলে মনে হয়।
রাসেলপিয়ার্স

3
0.632 সম্পর্কে মূল কাগজটি দেখুন যা সঠিকভাবে শ্রেণিবদ্ধ অনুপাতটি ব্যবহার করে এবং সংজ্ঞা দেয় (ইফ্রন এবং তিবশিরানী জাসা 92: 548; 1997)। পক্ষপাত অনুমান করার জন্য আশাবাদ বুটস্ট্র্যাপ বুটস্ট্র্যাপের একটি বৈকল্পিক। এটি গং-তে বর্ণিত হয়েছে: জাসা 85:20; 1990.
ফ্র্যাঙ্ক হ্যারেল

2

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

    from numpy import mean
    from numpy.random import choice

    N = 3000

    variables = range(N)

    num_loop = 1000
    # Proportion of remaining variables
    p_var = []

    for i in range(num_loop):
        set_var = set(choice(variables, N))
        p=len(set_var)/float(N)
        if i%50==0:
            print "value for ", i, " iteration ", "p = ",p
        p_var.append(p)

    print "Estimator of the proportion of remaining variables, ", mean(p_var)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.