簡體   English   中英

R的多元霍克斯分布

[英]Multivariate Hawkes distribution in R

我有一個用戶可以點擊的N個類別的列表。 可以說完全有K這樣的用戶。 我有過去3個月的數據,告訴哪個用戶點擊了哪個類別的日期多少次。 對於前 - 2016年6月20日:[10,15,12,15]}這個詞是針對特定用戶的,並且在6月20日說他點擊了類別10,12一次和15次兩次。

鑒於此數據,我想使用多變量Hawks分布對此進行建模,以便我可以根據已點擊的過去類別(相同和不同類別)預測用戶將點擊哪些類別。

我已經看了很多例子。 http://jheusser.github.io/2013/09/08/hawkes.html使用ptproc包使用單變量Hawks發行版。 但是,ptproc現在不存在了。

我想提供平均值,alpha和beta參數的隨機初始化,並希望模型使用EM算法執行最大似然估計,以找到參數的最佳值並將其返回。

使用hawkes包,

library(hawkes)
lambda0 <- c(0.2,0.2)
alpha   <- matrix(c(0.5,0,0,0.5),byrow=TRUE,nrow=2)
beta    <- c(0.7,0.7)
history <- simulateHawkes(lambda0,alpha,beta,3600)
l       <- likelihoodHawkes(lambda0,alpha,beta,history)

這計算了一些隨機初始化參數的可能性。 如何通過使用EM算法找到最佳參數並最大化多變量Hawkes分布的可能性?

謝謝!

params_hawkes <- optim(c(rep(1,2), rep(0.2,4),rep(2,2)), nloglik_bi_hawkes, history = history)

optim函數可用於查找最佳參數。

nloglik_bi_hawkes <- function(params, history){
mu <- c(params[1],params[2])
alpha <- matrix(c(params[3],params[4],params[5],params[6]),byrow=TRUE,nrow=2)
beta <- c(params[7], params[8])
return(likelihoodHawkes(mu, alpha, beta, history))
}

這里,alpha,beta和mu被初始化為隨機值,然后通過最小化負對數似然來更新。

最后的參數列表存儲在param_hawkes中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM