আর-তে স্কেলিং-টি বিতরণ sc


17

আমি টি-ডিস্ট্রিবিউশনের পরামিতিগুলি কীভাবে ফিট করব, অর্থাৎ সাধারণ বন্টনের 'গড়' এবং 'মানক বিচ্যুতি'র সাথে সম্পর্কিত পরামিতি। আমি ধরে নিই যে তাদের টি-বিতরণের জন্য 'গড়' এবং 'স্কেলিং / ডিগ্রি অফ স্বাধীনতার' বলা হয়?

নিম্নলিখিত কোডটি প্রায়শই 'অপ্টিমাইজেশন ব্যর্থ' ত্রুটির ফলাফল করে।

library(MASS)
fitdistr(x, "t")

আমাকে কি প্রথম x স্কেল করতে হবে বা সম্ভাব্যতায় রূপান্তর করতে হবে? কিভাবে এটি সেরা?


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

উত্তর:


16

fitdistrপ্রদত্ত বিতরণের প্যারামিটারগুলি সন্ধান করতে সর্বাধিক সম্ভাবনা এবং অনুকূলতা কৌশলগুলি ব্যবহার করে। কখনও কখনও, বিশেষত টি-বিতরণের জন্য, যেমন @ ব্যবহারকারী 12719 লক্ষ্য করেছেন, ফর্মটিতে অপ্টিমাইজেশন:

fitdistr(x, "t")

একটি ত্রুটি সঙ্গে ব্যর্থ।

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

fitdistr(x, "t", start = list(m=mean(x),s=sd(x), df=3), lower=c(-1, 0.001,1))

দ্রষ্টব্য, df=3"সর্বোত্তম" কী dfহতে পারে তা আপনার সেরা অনুমান । এই অতিরিক্ত তথ্য সরবরাহ করার পরে আপনার ত্রুটি চলে যাবে।

এর অভ্যন্তরীণ যান্ত্রিক কৌশলগুলি আরও ভালভাবে বুঝতে আপনাকে সহায়তার জন্য কয়েকটি অংশ fitdistr:

সাধারণের জন্য, লগ-সাধারণ, জ্যামিতিক, সূচকীয় এবং পোইসন বিতরণ ক্লোজড-ফর্ম এমএলইগুলি (এবং সঠিক মান ত্রুটিগুলি) ব্যবহৃত হয়, এবং startসরবরাহ করা উচিত নয়।

...

নিম্নলিখিত নামযুক্ত বিতরণগুলির জন্য, যুক্তিসঙ্গত প্রারম্ভিক মানগুলি গণনা করা হবে যদি startবাদ দেওয়া হয় বা কেবল আংশিকভাবে নির্দিষ্ট করা হয়: "সতর্কী", "গামা", "লজিস্টিক", "নেতিবাচক দ্বিপদী" (মিউ এবং আকার দ্বারা প্যারাম্যাট্রাইজড), "টি" এবং "উইবুল "। নোট করুন যে ফিটগুলি দুর্বল হলে এই শুরু হওয়া মানগুলি যথেষ্ট ভাল নাও লাগবে: বিশেষত যদি লাগানো বিতরণটি দীর্ঘ-লেজ না থাকে তবে এগুলি বহিরাগতদের প্রতিরোধী নয় are


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

10

νটি

νটি

set.seed(1234)
n <- 10
x <- rt(n,  df=2.5)

make_loglik  <-  function(x)
    Vectorize( function(nu) sum(dt(x, df=nu,  log=TRUE)) )

loglik  <-  make_loglik(x)
plot(loglik,  from=1,  to=100,  main="loglikelihood function for df     parameter", xlab="degrees of freedom")
abline(v=2.5,  col="red2")

এখানে চিত্র বর্ণনা লিখুন

এন

আসুন কিছু সিমুলেশন চেষ্টা করি:

t_nu_mle  <-  function(x) {
    loglik  <-  make_loglik(x)
    res  <-  optimize(loglik, interval=c(0.01, 200), maximum=TRUE)$maximum
    res   
}

nus  <-  replicate(1000, {x <- rt(10, df=2.5)
    t_nu_mle(x) }, simplify=TRUE)

> mean(nus)
[1] 45.20767
> sd(nus)
[1] 78.77813

অনুমানটি দেখানো খুব অস্থির (হিস্টোগ্রামের দিকে লক্ষ্য করে, অনুমান মানের একটি বড় অংশ 200 এর অপ্টিমাইজ করার জন্য প্রদত্ত উপরের সীমাতে থাকে)।

একটি বৃহত্তর নমুনা আকারের সাথে পুনরাবৃত্তি:

nus  <-  replicate(1000, {x <- rt(50, df=2.5)
    t_nu_mle(x) }, simplify=TRUE)
> mean(nus)
[1] 4.342724
> sd(nus)
[1] 14.40137

যা অনেক ভাল, তবে গড়টি এখনও 2.5 এর সত্য মানের থেকে অনেক বেশি।

তারপরে মনে রাখবেন যে এটি আসল সমস্যার একটি সরলিকৃত সংস্করণ যেখানে অবস্থান এবং স্কেল পরামিতিগুলিও অনুমান করতে হবে।

টিν


5
আপনার সিদ্ধান্তে যে অনুমান করা যায় যে ডিএফ অনুমানের সমস্যাগুলি আসলে টি-ডিস্ট্রিবিউশন প্রথম স্থানে (অর্থাত্ দৃ rob়তা) বেছে নেওয়ার কারণের বিরুদ্ধে কাজ করতে পারে বলে মনে করা হয়।
ব্যবহারকারী 12719

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

8

ফিটডিজ্টারের সহায়তায় এটি উদাহরণ:

fitdistr(x2, "t", df = 9)

ইঙ্গিত করে যে আপনার কেবল df এর জন্য একটি মান প্রয়োজন। কিন্তু এটি মানকে মানায়।

আরও নিয়ন্ত্রণের জন্য, তারাও দেখায়

mydt <- function(x, m, s, df) dt((x-m)/s, df)/s
fitdistr(x2, mydt, list(m = 0, s = 1), df = 9, lower = c(-Inf, 0))

যেখানে প্যারামিটারগুলি m = গড়, s = মান বিচ্যুতি, df = স্বাধীনতার ডিগ্রি হবে


1
আমার ধারণা, টি-বিতরণের প্যারামিটারগুলি সম্পর্কে আমি বিভ্রান্ত। এটির কি 2 (গড়, ডিএফ) বা 3 (গড়, স্ট্যান্ডার্ড বিচ্যুতি, ডিএফ) পরামিতি রয়েছে? আমি ভাবছিলাম যে কেউ 'df' পরামিতি ফিট করতে পারে কিনা।
ব্যবহারকারী 12719

1
@ user12719 শিক্ষার্থীর টি বিতরণে তিনটি পরামিতি রয়েছে: অবস্থান, স্কেল এবং স্বাধীনতার ডিগ্রি। এগুলি গড়, মানক বিচ্যুতি এবং ডিএফ হিসাবে উল্লেখ করা হয়নি কারণ এই বিতরণের গড় এবং বৈচিত্র তিনটি পরামিতিগুলির উপর নির্ভর করে। এছাড়াও, কিছু ক্ষেত্রে তাদের উপস্থিতি নেই। পিটার ফ্লুম ডিএফ ঠিক করে দিচ্ছে তবে এটি অজানা প্যারামিটার হিসাবেও বিবেচিত হতে পারে।

1
@ পিটারফ্লম কচী বিতরণের ক্ষেত্রে এটি স্পষ্ট যে m এবং s এর অবস্থান এবং স্কেল। আমি স্বরলিপি এম এবং এর সাথে সম্মত হই এবং তারা পরামর্শ দেয় যে তারা যথাক্রমে গড় এবং মান বিচ্যুতি উপস্থাপন করে। তবে এটি কেবল সরলকরণ \muএবং \sigmaপাশাপাশি হতে পারে । +1 অনেক আগে, পথে।

1
@ পিটারফ্লোম কি আর এর সাহায্যের ফাইল থেকে এই উদ্ধৃতি দিয়ে বোঝায় যে শিক্ষার্থীদের বন্টনের জন্য ডিএফ সবসময় 9 থাকে? আপনি কি মনে করেন না ডিএফও অনুমান করা উচিত? আসলে, অনুপস্থিতি dfত্রুটির কারণ এবং সঠিক উত্তরটি এটি সন্ধানের জন্য কিছু রেসিপি সরবরাহ করা উচিত should
সের্গে বুশমানভ

1
@ পিটারফ্লম বিটিডাব্লু, আপনি যদি আপনার উদ্ধৃতিটির ওপরে কয়েকটি ফাইলের সাহায্যের ফাইলটি পড়েন তবে আপনি খুঁজে পাবেন যে কেন df=9তাদের উদাহরণে ভাল এবং এখানে অপ্রাসঙ্গিক।
সের্গে বুশমানভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.