আর ব্যবহার করে লাসো ভবিষ্যদ্বাণী করার মানক ত্রুটি


60

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

সুতরাং আমার প্রশ্নটি হল: লাসো পূর্বাভাসের জন্য স্ট্যান্ডার্ড ত্রুটিগুলি গণনা করার জন্য কি কোনও প্যাকেজ বা কিছু আর কোড উপলব্ধ?


3
এই প্রশ্নের অন্তর্নিহিত প্রকৃতিটি স্পষ্ট করার জন্য (যেহেতু এটি বিভিটি সিভি এবং এসও পিছনে পিছনে চলেছে), আমি আশ্চর্য হই যে আমরা শিরোনামটি সম্পাদন করতে পারি কিনা, রব। কীভাবে 'লাসো স্ট্যান্ডার্ড ত্রুটির জন্য কেন কোনও প্যাকেজ বলে মনে হচ্ছে না, সেগুলি গণনা করা কি কঠিন?', বা এর মতো কিছু, সম্ভবত ডাব্লু / কিছু ছোট ছোট সম্পাদনাগুলি এটির সামঞ্জস্য বানাতে to আমি মনে করি এটি সিভিতে বিষয়টিকে আরও স্পষ্ট করে তুলবে যাতে এই অস্পষ্টতা না ঘটে এবং আমাদের আর পিছনে যেতে হবে না।
গুং - মনিকা পুনরায়

3
আমি পরিসংখ্যান পদ্ধতি সম্পর্কে প্রশ্নটি আরও তৈরি করতে পারি, তবে এটি আসলে আমি জানতে চেয়েছিলাম না। কোন সফ্টওয়্যার কোনও প্রদত্ত পদ্ধতি প্রয়োগ করে সে সম্পর্কে সিভিতে প্রশ্নের জন্য জায়গা থাকতে হবে। আরও আলোচনা meta.stats.stackexchange.com/q/2007/159
রব হ্যান্ডম্যান

1
আপনি প্যাকেজ ব্যবহার করে কোনও বেইশিয়ান কাঠামোর মধ্যে এটি সহজেই করতে পারেন monomvn, নীচে আমার উত্তরটি দেখুন।
অনুরাগীরা

উত্তর:


46

কিউং এট আল। (২০১০), "পেনালাইজড রিগ্রেশন, স্ট্যান্ডার্ড ত্রুটিগুলি, এবং বায়েসিয়ান ল্যাসোস", বায়সিয়ান অ্যানালাইসিস, , ২ , পরামর্শ দেয় যে লাসো পূর্বাভাসের জন্য স্ট্যান্ডার্ড ত্রুটিগুলি গণনার পরিসংখ্যানগতভাবে বৈধ পদ্ধতির বিষয়ে একমত হতে পারে না। তিবশিরানি মনে হয় (43 স্লাইড) সম্মতি জানায় যে স্ট্যান্ডার্ড ত্রুটিগুলি এখনও একটি অমীমাংসিত সমস্যা।


7
এটি ব্যাখ্যা করবে কেন প্যাকেজগুলি স্ট্যান্ডার্ড ত্রুটিগুলি প্রয়োগ করে না।
রব হ্যান্ডম্যান

20

সম্পর্কিত নোটে, যা সহায়ক হতে পারে, তিবশিরানী এবং সহকর্মীরা লাসোর জন্য একটি তাত্পর্য পরীক্ষা করার প্রস্তাব করেছিলেন। কাগজ পাওয়া যায়, এবং খেতাবধারী "Lasso জন্য একটি তাত্পর্য পরীক্ষা"। কাগজের একটি নিখরচায় সংস্করণ পাওয়া যাবে এখানে


আপনি উল্লিখিত কাগজে পেওয়াল
mvherweg

13

সন্দীপন কর্মকার উত্তর আপনাকে কী করতে হবে তা বলে , এটি আপনাকে "কীভাবে" সহায়তা করবে:

> library(monomvn)
>
> ## following the lars diabetes example
> data(diabetes)
> str(diabetes)
'data.frame':   442 obs. of  3 variables:
 $ x : AsIs [1:442, 1:10] 0.038075.... -0.00188.... 0.085298.... -0.08906.... 0.005383.... ...
      ..- attr(*, "dimnames")=List of 2
      .. ..$ : NULL
  .. ..$ : chr  "age" "sex" "bmi" "map" ...

 $ y : num  151 75 141 206 135 97 138 63 110 310 ...

[...]

> ## Bayesian Lasso regression
> reg_blas <- with(diabetes, blasso(x, y))
t=100, m=8
t=200, m=5
t=300, m=8
t=400, m=8
t=500, m=7
t=600, m=8
t=700, m=8
t=800, m=8
t=900, m=5
> 
> ## posterior mean beta (setting those with >50% mass at zero to exactly zero)
> (beta <- colMeans(reg_blas$beta) * (colMeans(reg_blas$beta != 0)  > 0.5))
      b.1       b.2       b.3       b.4       b.5       b.6       b.7       b.8 
   0.0000 -195.9795  532.7136  309.1673 -101.1288    0.0000 -196.4315    0.0000 
      b.9      b.10 
 505.4726    0.0000 
> 
> ## n x nsims matrix of realizations from the posterior predictive:
> post_pred_y <- with(reg_blas, X %*% t(beta))
> 
> ## predictions:
> y_pred <- rowMeans(post_pred_y)
> head(y_pred)
[1]  52.772443 -78.690610  24.234753   9.717777 -23.360369 -45.477199
> 
> ## sd of y:
> sd_y <- apply(post_pred_y, 1, sd)
> head(sd_y)
[1] 6.331673 6.756569 6.031290 5.236101 5.657265 6.150473
> 
> ## 90% credible intervals
> ci_y <- t(apply(post_pred_y, 1, quantile, probs=c(0.05, 0.95)))
> head(ci_y)
             5%       95%
[1,]  42.842535  62.56743
[2,] -88.877760 -68.47159
[3,]  14.933617  33.85679
[4,]   1.297094  18.01523
[5,] -32.709132 -14.13260
[6,] -55.533807 -35.77809

13

স্ট্যান্ডার্ড ত্রুটিগুলি গণনার সমস্যার একমাত্র বিকল্প বয়েসিয়ান লাসো। স্ট্যান্ডার্ড ত্রুটিগুলি স্বয়ংক্রিয়ভাবে বয়েসিয়ান লাসোতে গণনা করা হয় ... আপনি খুব সহজেই গিবস স্যাম্পলিং স্কিম ব্যবহার করে বায়সিয়ান লাসো বাস্তবায়ন করতে পারেন ...

মডেলটির প্যারামিটারগুলিতে নির্ধারিত হওয়ার জন্য বায়েসিয়ান লাসোকে পূর্বের বিতরণ দরকার। লাসো মডেলে, আমাদের উদ্দেশ্যমূলক কার্য রয়েছে সাথে নিয়মিতকরণ পরামিতি হিসাবে। এখানে যেমন for এর জন্য আমাদের এল_1 তাই এর জন্য একটি বিশেষ ধরণের পূর্ব বিতরণ প্রয়োজন, ল্যাপলসিটি বিতরণ সাধারণ ঘনত্বের মিশ্রণ হিসাবে বিতরণের সাথে সাধারণ বিতরণের একটি স্কেল মিশ্রণ। প্রতিটি পরামিতিগুলির পূর্ণ শর্তাধীন পোস্টেরিয়রের উপর ভিত্তি করে হ্রাস করতে হবে। λ 1 β||yXβ||22+λ||β||1λ1β

তারপরে কেউ চেইনের অনুকরণের জন্য গিবস স্যাম্পলিং ব্যবহার করতে পারে। দেখুন পার্ক & Cassella (2008), "Bayesian, Lasso", Jasa , 103 , 482

ঘন ঘন LASO এর অন্তর্নিহিত তিনটি ঘাটতি রয়েছে:

  1. ক্রস বৈধতা বা অন্য উপায়ে একজনকে বাছাই করতে হবে ।λ

  2. স্ট্যান্ডার্ড ত্রুটি নিরূপণ করা যেমন Lars এবং অন্যান্য আলগোরিদিম পয়েন্ট অনুমান উত্পাদন কঠিন ।β

  3. সমস্যাগুলির ক্রমবর্ধমান কাঠামোটি ঘন ঘন মডেল ব্যবহার করে এনকোড করা যায় না, যা বেয়েশিয়ার কাঠামোর ক্ষেত্রে বেশ সহজ।


11

উপরের উত্তরগুলিতে যোগ করার জন্য, সমস্যাটি মনে হচ্ছে যে পেনাল্টিযুক্ত মডেল থেকে অনুমান পক্ষপাতিত্বমূলক এবং বুটস্ট্র্যাপিং কেবলমাত্র বৈকল্পিকের সাথে কথা বলবে - অনুমানের পক্ষপাতিত্ব উপেক্ষা করে এমনকি বুটস্ট্র্যাপও সম্ভবত অপ্রতুল। এটি পৃষ্ঠায় দন্ডিত প্যাকেজটির জন্য উইগনেটে সুন্দরভাবে সংক্ষিপ্তসারিত হয়েছে ।

যদি পূর্বাভাসের জন্য ব্যবহার করা হয়, তবে কেন মডেল থেকে একটি স্ট্যান্ডার্ড ত্রুটি প্রয়োজন? আপনি কি যথাযথভাবে বৈধতা বা বুটস্ট্র্যাপটি অতিক্রম করতে পারবেন না এবং এমএসইয়ের মতো পূর্বাভাস সম্পর্কিত কোনও মেট্রিকের চারপাশে একটি মানক ত্রুটি তৈরি করতে পারবেন না?


3
বুটস্ট্র্যাপিং পক্ষপাতের জন্য অনুমান এবং সঠিক উভয়ই করতে পারে, যদিও নমুনাগুলি মোটামুটি বড় হওয়া দরকার।
Glen_b

3

আর, সিলেক্ট ইনফারেন্স প্যাকেজটি রয়েছে https://cran.r-project.org/web/packages/selectiveInferences/index.html , যা নীচের কাগজের উপর ভিত্তি করে লাসো দ্বারা লাগানো আপনার সহগের জন্য আত্মবিশ্বাসের অন্তর এবং পি মান সরবরাহ করে :

স্টিফেন রিড, জেরোম ফ্রেডম্যান এবং রব তিবশিরানী (২০১৪)। লাসো রিগ্রেশন-এ ত্রুটি বৈকল্পিক অনুমানের একটি অধ্যয়ন। arXiv: 1311.5274

পিএস: কেবল বুঝতে পারুন যে এটি আপনার পরামিতিগুলির জন্য ত্রুটির প্রাক্কলন তৈরি করে, আপনার চূড়ান্ত ভবিষ্যদ্বাণীতে ত্রুটির জন্য নিশ্চিত নয়, যদি আপনি পরে যা করেন তবে ... আমি মনে করি আপনি যদি এটি চান তবে "জনসংখ্যার পূর্বাভাস অন্তর" ব্যবহার করতে পারবেন (দ্বারা একটি মাল্টিভিয়ারেট সাধারণ বিতরণ অনুসরণ করে ফিট অনুসারে পুনরায় মডেলিং পরামিতি)।

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