কোনও ডেটা সেট প্রদত্ত সম্ভাব্যতা বিতরণ স্বয়ংক্রিয়ভাবে নির্ধারণ করুন


12

একটি ডেটাসেট দেওয়া:

x <- c(4.9958942,5.9730174,9.8642732,11.5609671,10.1178216,6.6279774,9.2441754,9.9419299,13.4710469,6.0601435,8.2095239,7.9456672,12.7039825,7.4197810,9.5928275,8.2267352,2.8314614,11.5653497,6.0828073,11.3926117,10.5403929,14.9751607,11.7647580,8.2867261,10.0291522,7.7132033,6.3337642,14.6066222,11.3436587,11.2717791,10.8818323,8.0320657,6.7354041,9.1871676,13.4381778,7.4353197,8.9210043,10.2010750,11.9442048,11.0081195,4.3369520,13.2562675,15.9945674,8.7528248,14.4948086,14.3577443,6.7438382,9.1434984,15.4599419,13.1424011,7.0481925,7.4823108,10.5743730,6.4166006,11.8225244,8.9388744,10.3698150,10.3965596,13.5226492,16.0069239,6.1139247,11.0838351,9.1659242,7.9896031,10.7282936,14.2666492,13.6478802,10.6248561,15.3834373,11.5096033,14.5806570,10.7648690,5.3407430,7.7535042,7.1942866,9.8867927,12.7413156,10.8127809,8.1726772,8.3965665)

.. আমি পরামিতিগুলির অনুমানের সাথে সর্বাধিক মানানসই সম্ভাব্যতা বিতরণ (গামা, বিটা, সাধারণ, সূচকীয়, পোইসন, চি-স্কোয়ার ইত্যাদি) নির্ধারণ করতে চাই। আমি নীচের লিঙ্কটিতে ইতিমধ্যে প্রশ্নটি সম্পর্কে অবগত রয়েছি, যেখানে আর ব্যবহার করে একটি সমাধান সরবরাহ করা হয়েছে: /programming/ অবিচ্ছিন্ন-অবিচ্ছিন্ন-বিতরণ-চ সেরা প্রস্তাবিত সমাধানটি হ'ল:

> library(MASS)
> fitdistr(x, 't')$loglik                                                              #$
> fitdistr(x, 'normal')$loglik                                                         #$
> fitdistr(x, 'logistic')$loglik                                                       #$
> fitdistr(x, 'weibull')$loglik                                                        #$
> fitdistr(x, 'gamma')$loglik                                                          #$
> fitdistr(x, 'lognormal')$loglik                                                      #$
> fitdistr(x, 'exponential')$loglik                                                    #$

এবং সবচেয়ে ছোট লগলিক মান সহ বিতরণ নির্বাচন করা হয়। তবে বিটা বিতরণের মতো অন্যান্য বিযুক্তির জন্য ফিটডিসটারের () ফাংশনে কিছু অতিরিক্ত পরামিতিগুলির স্পেসিফিকেশন প্রয়োজন:

   fitdistr(x, 'beta', list(shape1 = some value, shape2= some value)).

প্রদত্ত যে আমি কোনও পূর্বের তথ্য ছাড়াই সেরা বিতরণ নির্ধারণের চেষ্টা করছি, আমি জানি না যে প্রতিটি বিতরণের জন্য প্যারামিটারগুলির মান কী হতে পারে। এমন কি আরও একটি সমাধান রয়েছে যা এই প্রয়োজনীয়তাটিকে আমলে নেয়? এটি আর হতে হবে না।

উত্তর:


18

তালিকায় নেই এমন বিতরণগুলির অনন্ততা সম্পর্কে আপনি কী করবেন?

আপনার তালিকার তালিকাগুলির মধ্যে কেউই পর্যাপ্ত পরিমাণে ফিট না হলে আপনি কী করবেন ? উদাহরণস্বরূপ যদি আপনার বিতরণ দৃim়ভাবে বিমোডাল হয়

আপনি কীভাবে এই ঘটনাকে মোকাবেলা করতে যাচ্ছেন যে ঘাতকটি গামার একটি বিশেষ ঘটনা এবং এর মতো, গামার অবশ্যই কোনও ডেটা সেটকে আরও ভাল ফিট করা উচিত, যেহেতু এটির অতিরিক্ত প্যারামিটার রয়েছে, এবং তাই এর অবশ্যই আরও ভাল সম্ভাবনা থাকতে হবে ?

আপনি কীভাবে সামাল দেন যে সম্ভাবনা কেবলমাত্র একটি গুণক ধ্রুবক পর্যন্ত সংজ্ঞায়িত হয় এবং ধারাবাহিকভাবে সংজ্ঞায়িত না হলে বিভিন্ন বিতরণের সম্ভাবনা স্বয়ংক্রিয়ভাবে তুলনীয় নাও হতে পারে?

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


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

1
ভাল, হ্যাঁ এবং না। কোন প্যারামিটার সেটটি আপনাকে সেরা ফিট দেয় তা গণনা করতে আপনি একটি "ফিগারের যোগ্যতা" নিয়ে আসতে পারেন এবং যোগ্যতার অঙ্কের মানটির অনুকূলিতকরণের জন্য একটি "হিল-ক্লাইম্বিং" লুপ লিখুন। একটি FOM এর একটি উদাহরণ হ'ল রিগ্রেশনটির জন্য আর-মান।
কার্ল উইথফট

আমি এই +1 সাবস্ক্রাইব।

4
@ শেকেম আপনি গামা সম্পর্কে বিন্দুটি মিস করেছেন। অতিরিক্ত প্যারামিটার সহ বিতরণগুলির ক্ষেত্রে সর্বদা আরও ভাল সম্ভাবনা থাকে, এমনকি যখন তথ্য কম প্যারামিটার সহ বিতরণ থেকে আসে । আপনার এটি বিবেচনা করা উচিত। এই প্রভাবের জন্য উপযুক্ত কিছু পদক্ষেপ সমন্বয় করুন। সত্যি কথা বলতে, আমি মনে করি আপনি যে জিনিসটি করার চেষ্টা করছেন সেটি সম্ভবত 'ভুল প্রশ্নের জবাব দেওয়া', কিছুটা জিজ্ঞাসা করার মতো 'এই স্ক্রুটিতে আঘাতের জন্য আমি কোনটি হাতুড়ি সেরা?'
গ্লেন_বি-রিনস্টেট মনিকা

1
যদি "সম্ভাবনা কেবলমাত্র একটি গুণক ধ্রুবক পর্যন্ত সংজ্ঞায়িত করা হয়," গ্লেন, তবে কীভাবে আপনার বক্তব্যটি অনুধাবন করা যায় যে "অতিরিক্ত প্যারামিটারগুলির সাথে বিতরণ সবসময় আরও ভাল সম্ভাবনা থাকে"? প্রকৃতপক্ষে, কীভাবে একজন সম্ভবত এতটা সংজ্ঞায়িত সম্ভাবনার তুলনা করতে পারেন? আমি সন্দেহ করি যে কিছু মূল ধারণাটি
আনস্টেটে

3

আমি একটি ফাংশন পেয়েছি যা মাতলাব ব্যবহার করে আমার প্রশ্নের উত্তর দেয়। এটি এই লিঙ্কটিতে পাওয়া যাবে: http://www.mathworks.com/matlabcentral/fileexchange/34943

আমি ইনপুট হিসাবে একটি ডেটা ভেক্টর নিই

   allfitdist(data)

এবং সেরা ফিটিং বিতরণের জন্য নিম্নলিখিত তথ্য প্রদান করে:

   DistName- the name of the distribution
   NLogL - Negative of the log likelihood
   BIC - Bayesian information criterion (default)
   AIC - Akaike information criterion
   AICc - AIC with a correction for finite sample sizes 
   ParamNames
   ParamDescription
   Params
   etc.

1
ঠিক আছে, এখন আপনাকে কেবলমাত্র আর-ফাইলে এম-ফাইলটি পোর্ট করা দরকার port :-)
কার্ল উইথফট

এমনকি না! যেমনটি আমি উল্লেখ করেছি যে এটি আর-ফাইল হওয়ার দরকার নেই, সুতরাং

এআইসি, বিআইসিসি, এআইসিসি ইত্যাদি সিদ্ধান্ত নেওয়ার একটি উপায় হতে পারে, তবে এটি কী বোঝাতে চাইছে তা সত্যই আপনি কী করার চেষ্টা করছেন তার উপর নির্ভর করে। উদাহরণস্বরূপ, লগ এল এর ক্ষেত্রে যদি একটি বিতরণ অন্যের সাথে সত্যিই নিকটে থাকে তবে আপনি কী করবেন? আপনি যা করতে চেষ্টা করছেন তা যদি ভবিষ্যদ্বাণী করা হয়, তবে সাধারণত আপনার মাপদণ্ডের নিকটে থাকা মডেলগুলি উপেক্ষা করে কেবল তা বাতিল করা উচিত নয়। উদাহরণস্বরূপ মডেল-গড় হওয়াই তাদের অ্যাকাউন্টে নেওয়ার এক উপায় one
বিজেআরএন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.