কার্টোসিস এবং সাধারণ আরভি এর স্কিউনেস বাড়ানোর রূপান্তর


20

আমি এমন একটি অ্যালগরিদম নিয়ে কাজ করছি যা পর্যবেক্ষণে s সাধারণত বিতরণ করা হয় এবং এই বিষয়টির উপর নির্ভর করে আমি এই অনুমানের বোধগম্যতার সাথে পরীক্ষা করতে চাই।Y

এটি করার জন্য, আমি ট্রান্সফর্মেশনগুলি ক্রম যা ক্রমান্বয়ে এর স্বাভাবিকতা ব্যাহত করবে । উদাহরণস্বরূপ, যদি sগুলি স্বাভাবিক থাকে তবে তাদের স্কিউনেস এবং কুর্তোসিস এবং ক্রমবর্ধমানভাবে উভয়কে বাড়িয়ে দেয় এমন রূপান্তরের একটি সিকোয়েন্সটি খুঁজে পাওয়া ভাল লাগবে।T1(),,Tn()Y= 0 = 3Y=0=3

আমার ধারণাটি ছিল প্রায় সাধারণভাবে প্রায় বিতরণ করা ডেটা অনুকরণ এবং তার উপর অ্যালগরিদম পরীক্ষা করা test প্রতিটি রূপান্তরিত ডেটাসেট পরীক্ষার অ্যালগরিদমের চেয়ে আউটপুট কতটা পরিবর্তন হচ্ছে তা দেখতে।টি 1 ( Y ) , , টি এন ( y )YT1(Y),,Tn(y)

লক্ষ্য করুন যে আমি সিমুলেটেড এর বিতরণকে নিয়ন্ত্রণ করি না , তাই আমি সাধারণ বিতরণ করে এমন বিতরণ ব্যবহার করে তাদের অনুকরণ করতে পারি না (যেমন স্কিউড জেনারেলাইজড ত্রুটি বিতরণ)।Y


2
এর মতো রূপান্তরগুলির ক্রমযুক্ত সমস্যাটি হল আপনার উপসংহারটি সেই নির্দিষ্ট ক্রমের প্রভাবের মধ্যে সীমাবদ্ধ। আপনার ক্রমটি (γ1,γ2) স্পেসে একটি ডিস্ট্রিবিউশনের একক পরিবারের সাথে সম্পর্কিত (সম্ভবত একটি পরামিতি, যেহেতু আপনি 'সিকোয়েন্স' বলছেন) স্বাভাবিকের রূপান্তরকে ভিত্তি করে আবিষ্কার করবে। দিন যে কার্যকর (γ1,γ2) অঞ্চলটি 2D এবং এর মধ্যে যে কোনও নির্দিষ্ট বিন্দুর জন্য রয়েছে বিভিন্ন সীমিত বিতরণ, একক পরিবারকে একক বক্ররেখার সন্ধান করা কিছুটা সীমাবদ্ধ থাকবে ... (সিটিডি) )
Glen_b -Rininstate মনিকা

1
(সিটিডি) ... বিশেষত যদি আপনি বিশেষভাবে উত্পন্ন পরিবারটি অন্যথায় মোটামুটি সাধারণ হতে পারে এমন সমস্যাগুলি প্রকাশ করে না।
গ্লেন_বি -রিনস্টেট মনিকা

উত্তর:


22

এটি সিনহ-আরকসিংহ থেকে রূপান্তরটি ব্যবহার করে করা যেতে পারে

জোন্স, এমসি এবং পিউসি এ। (২০০৯)। সিংহ-আরকসিংহ বিতরণবায়োমেটিকার 96: 761–780।

রূপান্তর হিসাবে সংজ্ঞায়িত করা হয়

()H(x;ϵ,δ)=sinh[δsinh1(x)ϵ],

যেখানে এবং । যখন এই রূপান্তরটি সাধারণ সিডিএফ প্রয়োগ করা হয়, তখন এটি একটি অবিবাহিত বিতরণ তৈরি করে যার পরামিতি নিয়ন্ত্রণ বক্রতা এবং সূঁচালতা যথাক্রমে (জোনস এবং Pewsey, 2009), অর্থে ভ্যান Zwet (1969) । এছাড়াও, যদি এবং আমরা আসল সাধারণ বিতরণটি পাই distribution নিম্নলিখিত আর কোড দেখুন। δ আর + এস ( এক্স ; ϵ , δ ) = Φ [ এইচ ( এক্স ; ϵ , δ ) ] ( ϵ , δ ) ϵ = 0 δ = 1ϵRδR+S(x;ϵ,δ)=Φ[H(x;ϵ,δ)](ϵ,δ)ϵ=0δ=1

fs = function(x,epsilon,delta) dnorm(sinh(delta*asinh(x)-epsilon))*delta*cosh(delta*asinh(x)-epsilon)/sqrt(1+x^2)

vec = seq(-15,15,0.001)

plot(vec,fs(vec,0,1),type="l")
points(vec,fs(vec,1,1),type="l",col="red")
points(vec,fs(vec,2,1),type="l",col="blue")
points(vec,fs(vec,-1,1),type="l",col="red")
points(vec,fs(vec,-2,1),type="l",col="blue")

vec = seq(-5,5,0.001)

plot(vec,fs(vec,0,0.5),type="l",ylim=c(0,1))
points(vec,fs(vec,0,0.75),type="l",col="red")
points(vec,fs(vec,0,1),type="l",col="blue")
points(vec,fs(vec,0,1.25),type="l",col="red")
points(vec,fs(vec,0,1.5),type="l",col="blue")

অতএব, প্যারামিটারগুলির যথাযথ ক্রম , আপনি বিভিন্ন স্তরের স্কিউনেস এবং কুর্তোসিস সহ বিতরণ / রূপান্তরগুলির ক্রম তৈরি করতে পারেন এবং এগুলি সাধারণ বন্টনের সাথে দেখতে যেমন দেখতে চান তেমন অনুরূপ বা অন্যরকম দেখায়।(ϵn,δn)

নিম্নলিখিত প্লটটি আর কোড দ্বারা উত্পাদিত ফলাফলটি দেখায়। জন্য (ঝ) এবং , এবং (২) এবং ।δ = 1 ϵ = 0 δ = ( 0.5 , 0.75 , 1 , 1.25 , 1.5 )ϵ=(2,1,0,1,2)δ=1 ϵ=0δ=(0.5,0.75,1,1.25,1.5)

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

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

এই বিতরণের সিমুলেশনটি সোজাভাবে দেওয়া হয়েছে যে আপনাকে কেবল বিপরীতটি ব্যবহার করে একটি সাধারণ নমুনা রূপান্তর করতে হবে ।()

H1(x;ϵ,δ)=sinh[δ1(sinh1(x)+ϵ)]

2
প্রচুর বিলম্বকারীকে ধন্যবাদ! আমি ঠিক এটিই খুঁজছিলাম।
মাত্তেও ফ্যাসিওলো

2
মনে হচ্ছে gamlss.dist::rSHASHoএই বিতরণগুলি তৈরি করতে পারে।
আর্টেম ক্লিভতসভ

7

এটি ল্যামবার্ট ডাব্লু এক্স এফ এলোমেলো ভেরিয়েবল / বিতরণ ব্যবহার করে করা যেতে পারে। একটি ল্যামবার্ট ডাব্লু এক্স এফ এলোমেলো ভেরিয়েবল (আরভি) হ'ল একটি নন-লিনিয়ারলি ট্রান্সফর্মড (আরভি) এক্স, ডিস্ট্রিবিউশন এফ সহ

এফ সাধারণ বিতরণ এবং হওয়ার জন্য এগুলি টুকির এইচ বিতরণকে হ্রাস করে। ল্যামবার্ট ডাব্লু এক্স এফ ডিস্ট্রিবিউশনের দুর্দান্ত সম্পত্তি হ'ল আপনি আবারও স্বাভাবিক থেকে স্বাভাবিক ফিরে যেতে পারেন; যেমন, আপনি প্যারামিটার এবং আপনার ডেটা অনুমান করতে পারেন ।α=1Gaussianize()

তারা বাস্তবায়িত হয়

ল্যামবার্ট ডাব্লু এক্স এফ রূপান্তরগুলি 3 টি স্বাদে আসে:

  • স্কিউড ( type = 's') স্কেউনেস প্যারামিটার সহγR
  • type = 'h' প্যারামিটার (এবং ) সহ ভারী লেজযুক্ত ( )αδ0α
  • type = 'hh'বাম / ডান টেল প্যারামিটারের সাথে স্কিউড এবং ভারি লেজযুক্ত ( ) δl,δr0

স্কিউড এবং ভারী লেজ (গুলি) সম্পর্কিত তথ্যসূত্র দেখুন (দাবি অস্বীকার: আমি লেখক am)

আর-তে আপনি অনুকরণ, অনুমান, প্লট ইত্যাদি ল্যামবার্ট ডাব্লু প্যাকেজের সাথে বেশ কয়েকটি ল্যামবার্ট ডাব্লু এক্স এফ বিতরণ করতে পারেন

library(LambertW)
library(RColorBrewer)
# several heavy-tail parameters
delta.v <- seq(0, 2, length = 11)
x.grid <- seq(-5, 5, length = 100)
col.v <- colorRampPalette(c("black", "orange"))(length(delta.v))

plot(x.grid, dnorm(x.grid), lwd = 2, type = "l", col = col.v[1],
     ylab = "")
for (ii in seq_along(delta.v)) {
  lines(x.grid, dLambertW(x.grid, "normal", 
                          theta = list(delta = delta.v[ii], beta = c(0, 1))),
        col = col.v[ii])
}
legend("topleft", paste(delta.v), col = col.v, lty = 1,
       title = "delta = ")

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

এটা তোলে একটা ক্রম জন্য একভাবে কাজ করে বক্রতা যোগ করতে। এবং যদি আপনি স্কিউনেস এবং ভারী-লেজ যুক্ত করতে চান তবে এবং একটি ক্রম তৈরি করুন ।δ δ Rγδlδr


5

এরকম একটি ক্রম হ'ল বিভিন্ন ডিগ্রিতে ক্ষয়ক্ষতি। যেমন

library(moments)
x <- rnorm(1000) #Normal data
x2 <- 2^x #One transformation
x3 <- 2^{x^2} #A stronger transformation
test <- cbind(x, x2, x3) 
apply(test, 2, skewness) #Skewness for the three distributions
apply(test, 2, kurtosis) #Kurtosis for the three distributions

রূপান্তরের মধ্যবর্তী ডিগ্রি পেতে আপনি করতে পারেন।x1.1,x1.2x2


0

@ User10525 হিসাবে অজগর হিসাবে একই উত্তর

import numpy as np
from scipy.stats import norm
def sinh_archsinh_transformation(x,epsilon,delta):
    return norm.pdf(np.sinh(delta*np.arcsinh(x)-epsilon))*delta*np.cosh(delta*np.arcsinh(x)-epsilon)/np.sqrt(1+np.power(x,2))


vec = np.arange(start=-15,stop=15+0.001,step=0.001)

import matplotlib.pyplot as plt
plt.plot(vec,sinh_archsinh_transformation(vec,0,1))
plt.plot(vec,sinh_archsinh_transformation(vec,1,1),color='red')
plt.plot(vec,sinh_archsinh_transformation(vec,2,1),color='blue')
plt.plot(vec,sinh_archsinh_transformation(vec,-1,1),color='red')
plt.plot(vec,sinh_archsinh_transformation(vec,-2,1),color='blue')

[1]

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