एक univariate घातीय Hawkes प्रक्रिया के लिए MLE ढूँढना


16

एकतरफा घातीय हॉक्स प्रक्रिया एक आत्म-रोमांचक बिंदु प्रक्रिया है जिसमें एक घटना आगमन दर है:

λ(t)=μ+ti<tαeβ(tti)

जहां घटना के आगमन का समय है।t1,..tn

लॉग संभावना फ़ंक्शन है

tnμ+αβ(eβ(tnti)1)+i<jln(μ+αeβ(tjti))

जिसे पुनरावर्ती रूप से परिकलित किया जा सकता है:

tnμ+αβ(eβ(tnti)1)+ln(μ+αR(i))

R(i)=eβ(titi1)(1+R(i1))

R(1)=0

MLE को खोजने के लिए मैं किन संख्यात्मक विधियों का उपयोग कर सकता हूं? लागू करने के लिए सबसे सरल व्यावहारिक तरीका क्या है?


1
मुझे सफलता मिली है और α को MLE में LBFGS कार्यान्वयन को अधिकतम करने से। लॉग-संभावना है नहीं अवतल में β हालांकि, तो मैं बस की एक सीमा से अधिक दोहराया β मूल्यों और अधिकतम संभावना के साथ एक उठाया। ध्यान दें कि प्रक्रिया की स्थिरता के लिए α < β आवश्यक है। μαββα<β
इमाद अहमद मंज़ूर

1
जिज्ञासु, प्रत्येक चरण में फिर से शुरू होने के बजाय R (i) के मूल्यों का उपयोग करके λ (t) फ़ंक्शन का सही रूप क्या है?
कौवा

जवाबों:


7

Nelder-Mead सिम्प्लेक्स एल्गोरिथ्म अच्छी तरह से काम करता लगता है .. इसे जावा में Apache Commons Math लाइब्रेरी द्वारा https://commons.apache.org/math/ पर लागू किया गया है । मैंने मल्टीवेरेट हाई-फ़्रीक्वेंसी अनियमित रूप से अंतरित डेटा के लिए पॉइंट प्रोसेस मॉडल में हॉक्स प्रक्रियाओं के बारे में एक पेपर भी लिखा है ।

फेलिक्स, ऍक्स्प / लॉग ट्रांसफ़ॉर्म का उपयोग करके मापदंडों की सकारात्मकता सुनिश्चित करता है। छोटी अल्फ़ा चीज़ों के लिए, arxiv.org को एक पेपर के लिए खोजें, जिसे "लगभग अस्थिर हॉव प्रक्रियाओं के लिए सीमा प्रमेय" कहा जाता है।


1
साइट पर आपका स्वागत है, @StephenCrowley। यदि आपके पास अपना प्रश्न है, तो कृपया उत्तर के रूप में (/ के हिस्से के रूप में) इसे पोस्ट न करें। पृष्ठ के शीर्ष पर ग्रे "ASK QUESTION" बटन पर क्लिक करें और वहां पूछें। यदि आपके पास ओपी से स्पष्टीकरण के लिए कोई प्रश्न है, तो आपको इसे ऊपर दिए गए प्रश्न के बाद टिप्पणी में पूछना चाहिए। (हालांकि frustratingly, आपको लगता है कि जब तक आप 50 प्रतिनिधि तक पहुँचने नहीं कर सकते।)
को पुनः स्थापित मोनिका - गुंग

3

मैंने nlopt लाइब्रेरी का उपयोग करके इस समस्या को हल किया । मैंने पाया कि कई विधियां काफी जल्दी से परिवर्तित हो गई हैं।


1
मुझे लगता है कि आप टी। ओजाकी (1979) से परिचित हैं, हॉक्स की आत्म-रोमांचक बिंदु प्रक्रियाओं , एन की अधिकतम संभावना अनुमान Inst। सांख्यिकीविद। गणित। , वॉल्यूम। ३१, नहीं। 1, 145-155 रु।
कार्डिनल

1
क्या आपने जो किया उसका अधिक विवरण दे सकते हैं? ऐसा लगता है कि बाधाओं को स्थापित करने में समस्या है और यह भी कि बड़े बीटा शून्य अल्फा से अप्रभेद्य हैं (वे दोनों पॉइज़न दिखते हैं)।
फेलिक्स

3

आप एक साधारण अधिकतमकरण भी कर सकते हैं। आर में:

neg.loglik <- function(params, data, opt=TRUE) {
  mu <- params[1]
  alpha <- params[2]
  beta <- params[3]
  t <- sort(data)
  r <- rep(0,length(t))
  for(i in 2:length(t)) {
    r[i] <- exp(-beta*(t[i]-t[i-1]))*(1+r[i-1])
  }
  loglik <- -tail(t,1)*mu
  loglik <- loglik+alpha/beta*sum(exp(-beta*(tail(t,1)-t))-1)
  loglik <- loglik+sum(log(mu+alpha*r))
  if(!opt) {
    return(list(negloglik=-loglik, mu=mu, alpha=alpha, beta=beta, t=t,
                r=r))
  }
  else {
    return(-loglik)
  }
}

# insert your values for (mu, alpha, beta) in par
# insert your times for data
opt <- optim(par=c(1,2,3), fn=neg.loglik, data=data)

आप यह सुनिश्चित कैसे करते हैं कि नकारात्मक मानों के लिए म्यू, अल्फा और बीटा सेट नहीं हैं?
फेलिक्स

आप कॉल में पैरामीटर lowerऔर upperपैरामीटर सेट कर सकते optimहैं।
assumednormal

नेल्डर-मीड के लिए नहीं आप वह नहीं कर सकते जो डिफ़ॉल्ट है? (देखें stat.ethz.ch/R-manual/R-devel/library/stats/html/optim.html )। इसके अलावा, मुझे नहीं लगता कि शून्य अल्फा से विशाल बीटा को अलग करने का कोई तरीका है, इसलिए सामान्य अनुकूलन बर्बाद होता है।
felix
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.