multivariatepointprocess's People
Forkers
dsimba hanjun-dai emaadmanzoor zshwuhan khotilov x-datainitiative ubear joyjitc xiaoshuai09 renqincai drbinliang dongh11 noisyoscillator samhaoyuan qingxin-meng akhvorov shaocongdong fedorajzf zcmail wisdomdeng littlesuncaicai leannejdong veralily jane11111 shawn1106 fredrlwo joe-nanomultivariatepointprocess's Issues
Questions about your paper
Hi DuNan,
I am recently reading your paper "Constructing Disease Network and Temporal Progression Model via Content-Sensitive Hawkes Process".
I try to repeat the experiment with the lib "PtPack", which I found on github.
And I have two questions when I deal with the MIMIC data.
The data seem like:
[disease1] [time1, time2, ... timen]
[disease2] []
[disease3] [time1, time2,... timem]
[disease4] ....
(1)
Is the arrtibute "EventID" important and should is be arranged in their time?
For there may be some disease happens at the same time, I do not how to deal with it.
(2)
And is I am supposed to do like what you do in learning_sparse_hawkes_with_customized_kernel.cc , if I want to repeat the experiment?
Thanks for your time and look forward to your reply!
Simulating the next event using Ogata's thinning
Hi, thanks for sharing this well-documented code! I was able build and run the examples on OSX very easily.
I am currently implementing Ogata's thinning algorithm for a different situation: I have an inhomogeneous Poisson process that is piecewise constant and periodic. For example, it has the following form:
lambda_weekend = 3.0
lambda_weekday = 0.5
I want to simulate from this process given a starting time t_0
.
Since my process is periodic, intensity_upper_bound = 3.0
and step_ = INFINITY
. Is my understanding correct?
When I simulate many timestamps from this process and plot the distribution of number of timestamps in weekdays and weekends, the distribution is as expected. So it appears my thinning implementation is correct.
However, given a start time t_0
, I want to predict the next timestamp t
. As you have done, I simulate from the upper bound process and reject timestamps with probability lambda(t)/lambda
. When I plot the distribution of accepted timestamps for a given start timestamp, I see that it is always close to exponential, regardless of whether my start timestamp fell on a weekday or a weekend. So my predicted interarrival time for the next event is always around 1/3
.
Did you notice anything similar for the Hawkes process? I know that the Poisson is memoryless but I expected the start time to have an effect.
Installation issue
Dear Nan Du,
I'm trying to install your library on MAC OS X Yosemite. I've X11 and gnuplot installed, I cloned your repos and try to install your library via 'make' but I got the following error message:
$ make
g++ -MMD -c -Wall -O3 -m64 -std=c++11 -I./include -I./3rd-party -o build/src/GNUPlotWrapper.o src/GNUPlotWrapper.cc
In file included from src/GNUPlotWrapper.cc:8:
src/../include/Utility.h:36:26: error: unknown type name 'FunctionHandler'
double SimpsonIntegral38(FunctionHandler& functor, double a, double b, u...
^
1 error generated.
make: *** [build/src/GNUPlotWrapper.o] Error 1
It would be very nice of you if you can tell me how to solve this issue. I'm very curious to see how your time-dependent recommendation system works.
Thanks,
Guillaume.
Static library build error on macOS 10.14
Hi,
Your library seems very nice and I came accross it while working on my final year project on Hawkes process. I was trying to build the library on my macbook but got some errors as shown below:
g++ -MMD -c -Wall -O3 -m64 -std=c++11 -I./include -I./3rd-party -o build/src/TerminatingProcessLearningTriggeringKernel.o src/TerminatingProcessLearningTriggeringKernel.cc
In file included from src/TerminatingProcessLearningTriggeringKernel.cc:9:
src/../include/TerminatingProcessLearningTriggeringKernel.h:190:67: error: no
matching function for call to 'ptr_fun'
...= (tau_.array() / sqrt2sigma_.array()).unaryExpr(std::ptr_fun(erfc));
^~~~~~~~~~~~
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1091:1: note:
candidate template ignored: couldn't infer template argument '_Arg'
ptr_fun(_Result (*__f)(_Arg))
^
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1109:1: note:
candidate template ignored: couldn't infer template argument '_Arg1'
ptr_fun(_Result (*__f)(_Arg1,_Arg2))
^
In file included from src/TerminatingProcessLearningTriggeringKernel.cc:9:
src/../include/TerminatingProcessLearningTriggeringKernel.h:210:67: error: no
matching function for call to 'ptr_fun'
...= (tau_.array() / sqrt2sigma_.array()).unaryExpr(std::ptr_fun(erfc));
^~~~~~~~~~~~
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1091:1: note:
candidate template ignored: couldn't infer template argument '_Arg'
ptr_fun(_Result (*__f)(_Arg))
^
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1109:1: note:
candidate template ignored: couldn't infer template argument '_Arg1'
ptr_fun(_Result (*__f)(_Arg1,_Arg2))
^
src/TerminatingProcessLearningTriggeringKernel.cc:46:114: error: no matching
function for call to 'ptr_fun'
...- deltaT_ji) / sqrt2sigma_.array()).unaryExpr(std::ptr_fun(erfc)) - erfc...
^~~~~~~~~~~~
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1091:1: note:
candidate template ignored: couldn't infer template argument '_Arg'
ptr_fun(_Result (*__f)(_Arg))
^
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1109:1: note:
candidate template ignored: couldn't infer template argument '_Arg1'
ptr_fun(_Result (*__f)(_Arg1,_Arg2))
^
src/TerminatingProcessLearningTriggeringKernel.cc:63:113: error: no matching
function for call to 'ptr_fun'
...- deltaT_ji) / sqrt2sigma_.array()).unaryExpr(std::ptr_fun(erfc)) - erfc...
^~~~~~~~~~~~
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1091:1: note:
candidate template ignored: couldn't infer template argument '_Arg'
ptr_fun(_Result (*__f)(_Arg))
^
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1109:1: note:
candidate template ignored: couldn't infer template argument '_Arg1'
ptr_fun(_Result (*__f)(_Arg1,_Arg2))
^
src/TerminatingProcessLearningTriggeringKernel.cc:104:114: error: no matching
function for call to 'ptr_fun'
...- deltaT_ji) / sqrt2sigma_.array()).unaryExpr(std::ptr_fun(erfc)) - erfc...
^~~~~~~~~~~~
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1091:1: note:
candidate template ignored: couldn't infer template argument '_Arg'
ptr_fun(_Result (*__f)(_Arg))
^
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1109:1: note:
candidate template ignored: couldn't infer template argument '_Arg1'
ptr_fun(_Result (*__f)(_Arg1,_Arg2))
^
src/TerminatingProcessLearningTriggeringKernel.cc:120:114: error: no matching
function for call to 'ptr_fun'
...- deltaT_ji) / sqrt2sigma_.array()).unaryExpr(std::ptr_fun(erfc)) - erfc...
^~~~~~~~~~~~
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1091:1: note:
candidate template ignored: couldn't infer template argument '_Arg'
ptr_fun(_Result (*__f)(_Arg))
^
/Library/Developer/CommandLineTools/usr/include/c++/v1/functional:1109:1: note:
candidate template ignored: couldn't infer template argument '_Arg1'
ptr_fun(_Result (*__f)(_Arg1,_Arg2))
^
6 errors generated.
make: *** [build/src/TerminatingProcessLearningTriggeringKernel.o] Error 1
- system: maxOS 10.14
- command used:
cd MultiVariatePointProcess
,make
- I have also installed
Eigen
andgnuplot
usingbrew
Can you help? Thank you so much!
Best Regards,
Shaocong
Step should be reduced after generating the next point
In the Ogata's thinning algorithm implementation, I believe that step
is the interval of time for which the intensity upper bound is valid. When the current time t
is incremented as t = t + s
, shouldn't the time for which the upper bound is valid decrease as step = step - s
?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.