স্বতন্ত্র পরিবর্তনশীলের সাথে কোন স্ট্যান্ডার্ড বিচ্যুতি স্কেল করে সেই হারটি অনুমান করুন


11

আমি একটি পরীক্ষা যা আমি স্বাভাবিকভাবে বিতরণ ভেরিয়েবলের পরিমাপ নিচ্ছি আছে ,Y

YN(μ,σ)

যাইহোক, পূর্ববর্তী পরীক্ষাগুলি কিছু প্রমাণ সরবরাহ করেছে যে স্ট্যান্ডার্ড বিচ্যুতি একটি স্বাধীন ভেরিয়েবল অ্যাফাইন ফাংশন , অর্থাৎσX

σ=a|X|+b

YN(μ,a|X|+b)

আমি পরামিতি অনুমান করার জন্য চাই এবং স্যাম্পলিং দ্বারা একাধিক মান এ । অধিকন্তু, পরীক্ষার সীমাবদ্ধতার কারণে আমি কেবলমাত্র একটি সীমাবদ্ধ (প্রায় 30-40) নমুনা নিতে পারি , এবং অসম্পূর্ণ পরীক্ষামূলক কারণে কয়েকটি মানের নমুনা পছন্দ করি prefer এই প্রতিবন্ধকতাগুলি দেওয়া, এবং অনুমান করার জন্য কোন পদ্ধতিগুলি পাওয়া যায় ?abYXYXab

পরীক্ষার বিবরণ

এটি অতিরিক্ত তথ্য, যদি আপনি আগ্রহী হন কেন আমি উপরের প্রশ্নটি জিজ্ঞাসা করছি। আমার পরীক্ষা শ্রুতি ও চাক্ষুষ স্থানিক উপলব্ধি পরিমাপ করে। আমার একটি পরীক্ষামূলক সেটআপ রয়েছে যাতে আমি শ্রুতি বা ভিজ্যুয়াল লক্ষ্যগুলি বিভিন্ন অবস্থান থেকে , এবং সাবজেক্ট উপস্থাপন করতে পারি এবং লক্ষ্যগুলি অনুভূত অবস্থানটি , নির্দেশ করে । দৃষ্টি * এবং অডিশন উভয়ই ক্রমবর্ধমান অদ্ভুততার (যেমন বৃদ্ধি ) সাথে কম সুনির্দিষ্টভাবে পেয়েছে , যা আমি উপরে হিসাবে মডেল করেছি । শেষ পর্যন্ত, আমি এবং অনুমান করতে চাইXY|X|σabদৃষ্টি এবং অডিশন উভয়ের জন্য, তাই আমি স্পেসে বিভিন্ন অবস্থানের প্রতিটি বিভাগের যথার্থতা জানি। এই অনুমানগুলি একই সাথে উপস্থাপিত হলে (এখানে উপস্থাপিত মাল্টিসেনসারি ইন্টিগ্রেশন তত্ত্বের অনুরূপ: http://www.ncbi.nlm.nih.gov/pubmed/12868643 ) ভিজ্যুয়াল এবং শ্রুতি লক্ষ্যগুলির আপেক্ষিক ওজন সম্পর্কে পূর্বাভাস দেওয়ার জন্য ব্যবহার করা হবে ।

* আমি জানি যে এক্সট্রাফোভাল স্থানের সাথে ফোভালের তুলনা করার সময় এই মডেলটি দৃষ্টিভঙ্গির পক্ষে ভুল নয়, তবে আমার পরিমাপগুলি কেবল বহির্মুখী স্থানের জন্যই সীমাবদ্ধ থাকে যেখানে এটি একটি শালীন অনুমান।


2
আকর্ষণীয় সমস্যা। সম্ভবত আপনি এই পরীক্ষাটি করানোর কারণটি সেরা সমাধানগুলি বিবেচনা করবে। আপনার চূড়ান্ত উদ্দেশ্য কি? প্রেডিক্সন? , , এবং / অথবা অনুমান ? আপনি আমাদের উদ্দেশ্য সম্পর্কে যত বেশি বলতে পারবেন উত্তরগুলি তত ভাল হতে পারে। μaσ
whuber

যেহেতু এসডি নেতিবাচক হতে পারে না, তাই এটি এক্স এর লিনিয়ার ফাংশন হওয়ার সম্ভাবনা কম Your আপনার পরামর্শ, একটি | এক্স |, একটি সংকীর্ণ বা বিস্তৃত আকারের আকৃতি w / সর্বনিম্ন X = 0 এ প্রযোজ্য, যা আমার কাছে একটি অপ্রাকৃত সম্ভাবনা বলে মনে হচ্ছে seems । আপনি কি নিশ্চিত যে এটি ঠিক?
গুং - মনিকা পুনরায়

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

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

1
আপনার কি যুক্তিসঙ্গত যুক্তিসঙ্গত কারণ আছে যে X = 0 ন্যূনতম এসডি উপস্থাপন করে, এবং সেই চ (| এক্স |) একঘেয়ে?
গুং - মনিকা পুনরায়

উত্তর:


2

পুলিশের, যেখানে আপনি একটি অপেক্ষাকৃত সহজ, কিন্তু "অ-মান" সৃজক মডেল যে আপনার জন্য পরামিতি অনুমান করার জন্য চাই ভালো একটি ক্ষেত্রে, আমার প্রথম চিন্তা মত একটি Bayesian অনুমান প্রোগ্রাম ব্যবহার করতে হবে স্ট্যান । আপনি যে বর্ণনাটি দিয়েছেন তা স্ট্যানের একটি মডেলকে খুব পরিষ্কারভাবে অনুবাদ করবে।

আরস্ট্যান (স্ট্যানের কাছে আর ইন্টারফেস) ব্যবহার করে কয়েকটি উদাহরণ আর কোড।

library(rstan)

model_code <- "
data {
    int<lower=0> n; // number of observations
    real y[n];
    real x[n];
}
parameters {
    real mu; // I've assumed mu is to be fit.
             // Move this to the data section if you know the value of mu.
    real<lower=0> a;
    real<lower=0> b;
}
transformed parameters {
    real sigma[n];
    for (i in 1:n) {
        sigma[i] <- a + b * fabs(x[i]);
    }
}
model {
    y ~ normal(mu, sigma);
}
"

# Let's generate some test data with known parameters

mu <- 0
a <- 2
b <- 1

n <- 30
x <- runif(n, -3, 3)
sigma <- a + b * abs(x)
y <- rnorm(n, mu, sigma)

# And now let's fit our model to those "observations"

fit <- stan(model_code=model_code,
            data=list(n=n, x=x, y=y))

print(fit, pars=c("a", "b", "mu"), digits=1)

আপনি এমন আউটপুট পাবেন যা দেখতে এরকম কিছু দেখাচ্ছে (যদিও আপনার এলোমেলো সংখ্যা সম্ভবত আমার চেয়ে আলাদা হবে):

Inference for Stan model: model_code.
4 chains, each with iter=2000; warmup=1000; thin=1; 
post-warmup draws per chain=1000, total post-warmup draws=4000.

   mean se_mean  sd 2.5%  25% 50% 75% 97.5% n_eff Rhat
a   2.3       0 0.7  1.2  1.8 2.2 2.8   3.9  1091    1
b   0.9       0 0.5  0.1  0.6 0.9 1.2   1.9  1194    1
mu  0.1       0 0.6 -1.1 -0.3 0.1 0.5   1.4  1262    1

Samples were drawn using NUTS(diag_e) at Thu Jan 22 14:26:16 2015.
For each parameter, n_eff is a crude measure of effective sample size,
and Rhat is the potential scale reduction factor on split chains (at 
convergence, Rhat=1).

মডেলটি ভালভাবে রূপান্তরিত হয়েছে (রাহাত = 1), এবং কার্যকর নমুনার আকার (এন_এফ) সব ক্ষেত্রেই যুক্তিযুক্তভাবে বড়, তাই প্রযুক্তিগত স্তরে মডেলটি ভাল আচরণ করে। শ্রেষ্ঠ অনুমান , এবং (গড় কলামে) মোটামুটি কি সরবরাহ করা হয়েছিল কাছাকাছি।abμ


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

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

2

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

YN(μ,a|x|+b)
l(μ,a,b)=ln(a|xi|+b)12(yiμa|xi|+b)2

আর এ, আমরা করতে পারি

make_lik  <-  function(x,y){
    x  <-  abs(x)
    function(par) {
        mu <- par[1];a  <-  par[2];  b <-  par[3]
        axpb <-  a*x+b
        -sum(log(axpb)) -0.5*sum( ((y-mu)/axpb)^2 )
    }
}

তারপরে কিছু ডেটা অনুকরণ করুন:

> x <-  rep(c(2,4,6,8),10)
> x
 [1] 2 4 6 8 2 4 6 8 2 4 6 8 2 4 6 8 2 4 6 8 2 4 6 8 2 4 6 8 2 4 6 8 2 4 6 8 2 4
[39] 6 8
> a <- 1
> b<-  3
> sigma <-  a*x+b
> mu  <-  10
> y  <-  rnorm(40,mu, sd=sigma)

তারপরে লগলিঙ্কলিটিটি ফাংশন করুন:

> lik <-  make_lik(x,y)
> lik(c(10,1,3))
[1] -99.53438

তারপরে এটি অনুকূলিতকরণ:

> optim(c(9.5,1.2,3.1),fn=function(par)-lik(par))
$par
[1] 9.275943 1.043019 2.392660

$value
[1] 99.12962

$counts
function gradient 
     136       NA 

$convergence
[1] 0

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