Romaric Demachy
email: romaric.demachy@irt-saintexupery.com

Sébastien Guilmeau
email: sebastien.guilmeau@irt-saintexupery.com

Short paper -Structural consistency of MBSE and MBSA models using Consistency Links

Keywords: Model-Based System Engineering, Model-Based Safety Assessment, digital continuity

The systems designed in industrial fields such as aeronautics or aerospace are more and more complex. In order to handle this complexity as well as the increasing need of digital continuity, model-based solutions are more and more introduced for system design (MBSE). In this picture, in order to ensure the consistency between the system design and the safety analysis, and thus increase the confidence in safety analyses results, our proposal is to ensure the consistency between MBSE and MBSA (Model Based Safety Analysis), which represent different views of the same system. To do so, we define Consistency Links (CL) that make a bridge between the structural items of each model. Associated with dedicated rules, that can be systematically checked, the CL can be used to drive the cross-review of models done by system engineers (SE) and safety specialists (SA) to increases detection of inconsistencies between models.

The work presented here is part of the S2C project and involves industrial partners from the space and the aeronautical industry. It is led jointly by IRT Saint Exupéry and IRT SystemX.

PROBLEM STATEMENT

When designing a system which must comply with safety requirements, the process shall ensure, as early as possible and all along the design phase, that the system architecture is compatible with them.

The safety assessment is performed by SA teams and imply the usage of safety methods and tools. Methods such as Fault Tree Analysis have been used for decades, but MBSA approach has emerged and is now recognized as an acceptable mean of compliance by aeronautic regulation authorities. Indeed, this approach is identified in ARP4761A, which gives guidelines and methods of performing the safety assessment for certification of civil aircraft, and will be soon published by SAE International. Ensuring the correctness of SA models with regards to the system design is mandatory for the relevance of the safety assessment. In current practices, this relies on exchanges and cross-review between the SE team and the SA team.

As the system design process also progressively relies on MBSE approaches, there is an opportunity to ease this review process by taking advantage of the provided model's formalism. The problem becomes : how to ensure a better consistency between the MBSE model and the MBSA model ? As these analyses are currently performed on specific tools dedicated to either MBSE or MBSA analysis, we choose here to focus on the case where two different (i.e. each model has its own objectives and modeling choices) and heterogenous (i.e. each model uses a specific modeling language) models are used. In this paper, the problem is narrowed taking into account the following constraints :

• Constraint A (CA): For MBSE models: only architecture description models (Capella, SysML, ...) and exclude specialised models (digital mock-up, electrical wiring models,etc...) • Constraint B (CB): For MBSA models: we consider failure propagation models (Altarica,...) • Constraint C (CC): Only the structural consistency is covered in this paper, the consistency of the behavior being a more difficult issue

The benefits of using such models to ease the review between system and safety experts in the aeronautical context has been discussed in [START_REF] Prosvirnova | Handling consistency between safety and system models[END_REF]. The problem of synchronisation of architecture models and safety models has been adressed in [START_REF] Legendre | Ingénierie système et sûreté de fonctionnement : Méthodologie de synchronisation des modèles d'architecture et d'analyse de risques[END_REF]. This thesis is based on the analysis that the information exchanged between these assets are informal. In [START_REF] Batteux | System structure modeling language (s2ml)[END_REF] and [START_REF] Batteux | Model synchronization: A formal framework for the management of heterogeneous models[END_REF] a processus for the synchronisation of MBSE and MBSA models has been proposed, consisting in the projection onto a dedicated language called S2ML (System Structure Modeling Language). [START_REF] Wouters | Collaborative systems engineering: Issues & challenges[END_REF] proposes an approach consisting in a digital collaborative space based on the federation of modeling languages into a common ontology.

The work presented here consists in a projection into a pivot meta-model in order to evaluate the structural consistency. The proposed method is implemented it in a tool and experimented on a representative case study.

Section 2 describes the principles of the method and details the consistency link concept. Section 3 gives details on how the method has been implemented in a tool for a Proof of Concept. Section 4 shows how the method and its implementation have been experimented on a representative case study, and what are the qualitative gains that have been identified. Section 5 lists the perspectives for future activities.

CONSISTENCY LINKS METHOD

To ease the consistency review, the proposed method consists in defining consistency links (CL) between groups of artifacts of each model with the following semantic : "The MBSE model element(s) and the MBSA model element(s) linked together represent the same object". Then, we can decompose the review to address only small and well defined perimeters at a time.

A CL carries, also, the consistency validation by reviewers. This is made concrete by the elements associated to the CL : a rationale that captures justification and assumptions, a validation status, meta-data such as the the review date and authors. The meta-model of the CL object and associated concept is represented on the figure 1 below. In this paper, the CL has been particularized for the functional architecture, although it could be adapted to other viewpoints, such as the logical or the physical architecture. Two types of CL are defined : CL for Functions (CLF), and CL for functional flows (CLfl). These concepts are illustrated on figures 2 and 3 below.

IMPLEMENTATION

The implemented process is illustrated by the figure 4, and starts with the SE and SA domain's models that are to be CL-linked. Constraints CA and CB induce an horizontal "language gap" because methods and tools (M&T ) differs between domains. To work around this, models are translated automatically to abstracted ones (considering their relative M&T ). Pragmatically, those new models are compound data flow graphs where edges are only between the more nested nodes. That means hierarchical functions of functional decomposition are the compound nodes with no flows between them. SEIM (Systems Engineering Information Model) meta-model rules both new models. It is limited to a subset of concepts required by structural consistency needs due to constraint CC. So, SEIM introduces a vertical "language gap", filled by the definition of a transformation logic producing SEIM concepts from domain's tools ones. The automation (i.e. concepts' extraction from domain's model then transformation to SEIM ones) is the last step of abstraction activity. SEIM policy is not to merge both domain's languages in an universal one, but rather to be the minimal intersection between domain's meta-models to fulfill targeted needs. This policy reduce the analysis workload on tools' meta-models.

Next process' step is the edition of CL via a graphical user interface (GUI ), see figure 5. Through it, zero or more SE abstracted artefacts are linked with zero or more SA abstracted ones. As the new models may have not the same abstraction's depth (inherent to the initial models), abstracted hierarchical compound nodes can be linked too. This allows a customized alignment between abstracted models limited to structure in this paper. This alignment is dependent of the granularity of domain's models, that means a coarsest model will drive the alignment of models. Complementary data (like rationale) are added, also, to get grips with realized grouping for the future cross-review. GUI has graphical capabilities that auto-layouts part of both abstracted models simultaneously, so that editor can navigate freely through them or redisplay artefacts he grouped previously via CL. At each saving action, the defined rules are automatically checked using CL and models. Linking may reveal inconsistencies originated by erroneous CL edition or by inconsistencies between models. In the first case, CL are updated while correction and publication of model has to be done for the second one. At end of the step, both disjunctive partition of the respective intermediate and abstracted models is reached.

When all rules are passed, cross-review between SE and SA experts starts from CL editor's proposed-partitioning. GUI graphical capabilities are used again so that both contributors share the same common representation. As the GUI represents an abstraction of original models, it exists a "view gap" (see 4). For Structural concerns, this discrepancy is limited. Round trips between authoring tools and GUI remain easy. After experts agree on a CL-scoped consistency they change its status and update possibly its rationale too. When all CL-scoped cross-review are done, a global and justified consistency status can be acted regarding the models.

Implementation considered also the iteration problem of models and CL. During design phase, models are updated (corrected, enlarged, etc,...) so the consistency status becomes suspicious at each evolution. But for the versioned models and CL, the rules of method and the automated step are reused to identify the flaws and/or corrupted CL. So incremental cross-review can be achieved by SE and SA experts to foster inspection only on impacted part of their models.

VALIDATION

In order to assess the feasibility and evaluate the gains of the method presented in 2 and implemented in the consistency management tool as described in 3, it has been experimented with the AIDA case study 1 . This case study is a drone system which aims at assisting the pre-flight check of a commercial aircraft. It consists mainly in an architecture description model in Capella2 which is used here as the MBSE model. For the purpose of the S2C project, an MBSA model has been developed in the SimfiaNeo tool, edited by Apsys 3 . This case study is representative of a medium size aeronautical system : obviously not as complex as an aircraft, but with enough depth and complexity to assess the feasibility of the method in an industrial case.

The validation activity has explored several phases of the lifecycle of such models : the initial creation of the CL set, the update of the CL set following changes in one of the models, the crossreview led jointly by SE and SA specialist to validate each CL. The cross-review exercise has been done as closest as possible to real conditions, with a system engineer and a safety specialist.

The tables 1 and 2 show some metrics to illustrate the size of the case study. Table 1 shows the number of model items, before and after the abstraction step. This illustrates the benefits of the abstraction step, which "flattens" the flows in the SimfiaNeo model. As Capella already applies the principle of direct flows between leaves elements, the abstraction step does not further reduce the number of flows in the MBSE abstracted model. Table 2 shows the number of CL created along with their cardinality (number of elements from each model in a CL). It illustrates the flexibility proposed by the method, which enables to associate any number of elements from each model in a same CL. In particular, the possibility to associate elements from one model only to a CL (i.e. those for which the cardinality is 0-1..n) is useful for model elements that are relevant in only one of the model. For example :

• The MBSE model may contain functions that have no safety impact and are not represented in the MBSA model. This can occur when a preliminary analysis, such as a Functional Hazard Assessment (FHA), has been realised, or thanks to "expert" knowledge of the system. • The MBSA model contains SA specific artifacts, such as the failure conditions observers, that are not represented in the MBSE model.

The Rationale attribute of the CL allows to capitalize the modelling choices and associated assumptions. The cross-review will particularly focus on the validation of these "not 1-1" CL.

The validation activity has shown the following qualitative gains for the proposed method :

• the CL comes on top of the existing MBSE and MBSA models, without generating additional modeling constraints, • the coverage and consistency rules associated to the CL set have shown efficiency in the detection of mismatches in the flow consistency, while being flexible enough to address a large number of model elements at the desired level of details, • the CL are helpful for the detection and propagation of model changes, • the CL offer a structure for an efficient cross-review focused on model changes, • the tooling support for consistency link definition and crossreview is feasible outside the captive authoring tool, although the developed tool could be matured for a better user experience, • the CL are relevant for discussions and justifications capitalization.

Globally, the CL method has proven to be useful to increase the confidence in the structural consistency of models. The induced workload may be slightly increased, which can be put in balance with the avoidance of running future biased analyses due to inconsistent models.

PERSPECTIVES AND FUTURE WORK

The work presented here is a first attempt to ensure the consistency between MBSE and MBSA models. It focuses on the structural consistency of the functional architecture. The tool implementing the method has the maturity of a Proof Of Concept.

Several axes of improvement can be identified :

• The method could be extended to cover also the logical and physical architectures. Topics such as the allocation of functions on logical or physical components could be addressed. This would be particularly relevant as the safety assessment is usually performed at those levels of representation, and not only on the functional aspects. • The tool can be improved in order to provide better user experience : rationalization of the displayed information, improvement of navigation and user displayed messages. Additional capabilities such as report edition or assistance algorithm for the creation of CL (ex: CL suggestion based on the similarities of the objects names in both models) could also be considered.

In addition of the local consistency handled by the CL at structural level, it is important to assess the consistency between the MBSE and MBSA behavioral level. Two approaches are possible either by simulation on overall models or by static local analysis on common models perimeters.

CONCLUSION

With the emergence of model-based approaches for the design of complex systems, and because these systems are sometimes subject to strong safety requirements emitted by the regulation authorities, the problem of ensuring the consistency between MBSE and MBSA models of a same system arises. Within the frame of the S2C project, we proposed a method to address the topic of structural consistency. An object called "Consistency Link" (CL) has been defined, and particularized to address the functional architecture. These CL are constrained by coverage and consistency rules.

For validation purpose, the method has been implemented in a tool. Although some improvements of the tool are needed to make it usable in a industrial context, it helped to assess the validity of the method.

The AIDA study case has been used to experiment the method. It has shown qualitative gains for the consistency cross-review activity, and an overall improvement in the trust one can have in the safety assessment of the system.

The method only addresses at the moment the problem of structural consistency of the functional architecture. While some improvement axes for the method have been identified, the S2C project currently focus on possible approaches to evaluate the behavior consistency.

Figure 1 :

 1 Figure 1: Metamodel of consistency link.

Figure 2 :

 2 Figure 2: Consistency links for functions.

Figure 3 :

 3 Figure 3: Consistency links for functional flows.

Figure 4 :

 4 Figure 4: Implementation synopsys.

Figure 5 :

 5 Figure 5: Partial view of the Graphical User Interface.

Table 1 :

 1 Complexity of the MBSE and MBSA models

	Type of	MBSE	Abstracted	MBSA	Abstracted
	model	model	MBSE	model	MBSA
	element		model		model
	Functions	159	159	148	148
	Funct. flows	285	285	438	196
	Cardinality	Numb. of CLF Numb. of CLfl
	1 MBSE to 1 MBSA	33		60
	1 MBSE to n MBSA	2		7
	n MBSE to 1 MBSA	7		20
	n MBSE to m MBSA	2		3
	0 MBSE to 1..n MBSA	1		9
	1..n MBSE to 0 MBSA	6		36
	Total		51		135

Table 2 :

 2 Complexity of the resulting CLset

AIDA is a public case study developped by the System Engineering center of competence of IRT Saint Exupéry. It is fully open-source and available here : https://sahara.irtsaintexupery.com/

AIDA/ 2 https://www.eclipse.org/

capella/ 3 https://www.apsys-airbus.com/


Gaël Poux-M Édard

Julien Velcin

Sabine Loudcher

Powered Hawkes-Dirichlet Process: Challenging Textual Clustering using a Flexible Temporal Prior

Keywords: clustering, temporal Bayesian prior, powered Dirichlet process, Hawkes process

The textual content of a document and its publication date are intertwined. For example, the publication of a news article on a topic is influenced by previous publications on similar issues, according to underlying temporal dynamics. However, it can be challenging to retrieve meaningful information when textual information conveys little information or when temporal dynamics are hard to unveil. Furthermore, the textual content of a document is not always linked to its temporal dynamics. We develop a flexible method to create clusters of textual documents according to both their content and publication time, the Powered Dirichlet-Hawkes process (PDHP). We show PDHP yields significantly better results than state-of-the-art models when temporal information or textual content is weakly informative. The PDHP also alleviates the hypothesis that textual content and temporal dynamics are always perfectly correlated. PDHP allows retrieving textual clusters, temporal clusters, or a mixture of both with high accuracy when they are not. We demonstrate that PDHP generalizes previous work -such as the Dirichlet-Hawkes process (DHP) and Uniform process (UP). Finally, we illustrate the changes induced by PDHP over DHP and UP in a real-world application using Reddit data.

I. INTRODUCTION

Online information is generated at an unprecedented rate. Every minute, 500,000 comments are posted on Facebook, 400 hours of videos are uploaded on Youtube, and 500,000 tweets are published on Twitter. A possible approach to make sense out of this mass of information is to cluster publication events together. Grouping similar publications together help understanding topics of interest or generate summaries of daily news. Many clustering algorithms are based on text similarity, that is, how similar the words of two published documents are [START_REF] Blei | Latent dirichlet allocation[END_REF]- [START_REF] Bahdanau | Neural machine translation by jointly learning to align and translate[END_REF]. Another relevant variable to group information together is the time of publication [START_REF] Du | Learning networks of heterogeneous influence[END_REF], [START_REF] Blei | Dynamic topic models[END_REF]. For example, two news articles about forest fires might be unrelated if the second article were published years after the first one despite a close lexical similarity. Imagine a news website that publishes a series about history every day at midday. Temporal dynamics would help understand that a publication the next day at midday is likely to be related to previous publications, even if the story (and thus the vocabulary) is different.

Many models that aim at understanding the temporal dynamics of clusters work by selecting a subset of observations according to a temporal sampling function [START_REF] Blei | Dynamic topic models[END_REF]- [START_REF] Yin | Model-based clustering of short text streams[END_REF]. However, sampling observations in time implies defining a sampling function that might not correctly model the temporal dynamics at stake. Besides, these works are based on a Dirichlet prior (DP) for clustering. The DP considers counts as a parameter, where a document always counts for 1. It has been argued that such modeling is not fit to account for the arrival of documents in continuous-time settings. In [START_REF] Du | Dirichlethawkes processes with applications to clustering continuous-time document streams[END_REF], the authors combine techniques of standard textual clustering with point processes. The idea is to infer the time-sampling function parameters as well as the rest of the model. Explicitly, they derive the Dirichlet-Hawkes process (DHP) prior for documents cluster allocation that takes time as a parameter and yields non-integer counts. It has been argued that this method cannot handle limited cases where text is less informative (e.g., short texts, overlapping vocabularies) [START_REF] Yin | Model-based clustering of short text streams[END_REF].

Our present work develops the Powered Dirichlet Hawkes process (PDHP) as a mean to handle this case. Besides, we highlight other limiting cases for which DHP fails whereas PDHP yields good results, for instance when temporal information conveys little information (overlapping Hawkes intensities, few observations). We also show there are cases where documents within a textual cluster do not follow the same temporal dynamics, which the DHP is not designed to handle. For instance, an article published by a popular newspaper is unlikely to have the same influence on subsequent similar articles (temporal dynamics) as the same article published by a less popular newspaper. We overcome all these limitations by developing the Powered Dirichlet-Hawkes process, which yields better results than DHP on every dataset considered (up to +0.3 NMI). It also allows us to distinguish textual clusters from temporal clusters (documents that follow the same dynamic independently from their content).

Our contributions are listed below:

• We highlight and explain the limitations of the DHP prior: it does not handle weakly informative temporal and textual information and it is not designed to consider different dynamics between text and time. • We derive the Powered Dirichlet Hawkes process (PDHP) as a new prior in Bayesian non-parametric for the temporal clustering of a stream textual documents, which is a generalization of the Dirichlet-Hawkes process (DHP)

and of the Uniform process (UP). • We show how the PDHP prior performs better than DHP and UP priors through thorough evaluation and comparison on several synthetic datasets and real-world datasets from Reddit. • We show that PDHP prior allows to select the information clusters are based on; we choose to favor their generation more according to documents' textual content or temporal dynamics.

II. BACKGROUND

A. How publication times carry valuable information

Before reviewing existing methods incorporating a temporal dimension into text clustering, we detail how this information is relevant to the task. Recent works on the online spread of textual documents have highlighted several key properties regarding the link between textual content and date of publication.

Firstly, it has been shown that textual documents do not get published independently one from the other. Often, the arrival of a document is conditional on the publication of earlier documents. A straightforward illustration is that a new research paper is built on previous publications and is likely to treat a similar topic; the present article exists because of all the references it cites. A 2012 research paper highlights the critical role played by interactions in the re-publication of a tweet on Twitter [START_REF] Myers | Clash of the contagions: Cooperation and competition in information diffusion[END_REF]. The authors claim the probability of retweets vary by 71% on average when considering temporal interactions. More recent works find that although the interaction between publications plays a significant role in later publications, the interaction matrix is often sparse [START_REF] Poux-Médard | Interactions in information spread: quantification and interpretation using stochastic block models[END_REF] -an article on textual clustering is more likely to appear conditional to publications about NLP, whose vocabulary is only a small subset of the scientific literature's one. It highlights the need to cluster words together to retrieve temporal interaction relevant to a textual clustering problem. In this context, a cluster should carry information about the interaction between the documents it contains.

Secondly, a problem that arises is the temporal aspect of interaction. It has been shown that online information interaction decays quickly with time [START_REF] Cao | Sequential choice bandits: learning with marketing fatigue[END_REF], [START_REF] Poux-Medard | Information interaction profile of choice adoption[END_REF]. Although the rate at which interaction influence decays depends on the dataset, it seems to fade rapidly for most online spreading processes [START_REF] Haralabopoulos | Lifespan and propagation of information in on-line social networks: A case study based on reddit[END_REF]. To keep the temporal information relevant, clusters must depend on time. For example, two series of news articles about vaccines might not be related (one might not trigger the other) if one was published in 2010 and the other in 2021; they are two different clusters since both obey their own dynamics, although their vocabulary is similar.

B. Temporal clustering of textual documents

The use of temporal dimension in documents clustering has been studied on many occasions; a notable spike of interest happened in 2006. Many authors tackled the problem of inferring time-dependent clusters from models based on LDA [START_REF] Blei | Dynamic topic models[END_REF], [START_REF] Wang | Topics over time: A non-markov continuous-time model of topical trends[END_REF], [START_REF] Iwata | Topic tracking model for analyzing consumer purchase behavior[END_REF]. However, most of these models are parametric, meaning the number of clusters is fixed at the beginning of the algorithm. Depending on the considered time range and the dataset, the number of clusters needs to be fine-tuned with several independent runs, making them hardly usable for many real-world applications. In all three references cited, the authors mention that a non-parametric version of the model might be derivable.

In 2008, A. Ahmed & al proposed the Recurrent Chinese Restaurant Process (RCRP) as an answer to this problem [START_REF] Ahmed | Dynamic non-parametric mixture models and the recurrent chinese restaurant process: with applications to evolutionary clustering[END_REF]. Instead of considering a fixed-size dataset, this model can handle a stream of documents arriving in chronological order, and the number of clusters is automatically updated. In this model, time is split into episodes to capture the temporal aspect of cluster formation; it considers an integer count of publications within a given time window. A later version of the model from 2010, the Distance-Dependent Chinese Restaurant Process (DD-CRP), tries to alleviate this approximation by replacing fixed-time episodes with a continuous-time sampling function [START_REF] Blei | Distance dependent chinese restaurant processes[END_REF]. However, the model still considers integer counts with only their distribution over time changing. Thus, the model is not designed to consider every temporal information in a continuous-time setting.

In 2015, N. Du & al answered this problem by combining the Dirichlet process with the Hawkes process, used to model the appearance of events in a continuous-time setting. The key idea is to replace the counts of a Dirichlet process with the intensity function of the Hawkes process. The resulting Dirichlet-Hawkes process (DHP) is then used as a prior for clustering documents appearing in a continuous-time stream. The inference is realized with a Sequential Monte-Carlo (SCM) algorithm. Following DHP, two articles have been published extending the idea: the Hierarchical Dirichlet Hawkes process (HDHP) [START_REF] Mavroforakis | Modeling the dynamics of learning activity on the web[END_REF] in 2016 and Indian Buffet Hawkes process in 2018 [START_REF] Tan | The indian buffet hawkes process to model evolving latent influences[END_REF]. Another work proposed an EM algorithm for the inference [START_REF] Xu | A dirichlet mixture model of hawkes processes for event sequence clustering[END_REF] in 2017 (it uses a heuristic method to update the number of clusters and cannot handle a stream of documents).

A common feature of all the models we mentioned is that they use a non-parametric Dirichlet process (DP) prior or variations built on it, such as DHP and HDHP. Yet, on several occasions, it has been pointed out that there are no specific reasons to use this process in particular and that alternative forms might work better depending on the dataset. In [START_REF] Welling | Flexible priors for infinite mixture models[END_REF], the author relaxes several conditions associated with DP and shows that alternative priors are an equally valid choice in Bayesian modeling. In [START_REF] Wallach | An alternative prior process for nonparametric bayesian clustering[END_REF], the authors derive the Uniform process (UP) and show that it performs better on a document clustering task. In [START_REF] Poux-Médard | Powered dirichlet process for controlling the importance of "rich-get-richer" prior assumptions in bayesian clustering[END_REF], the authors generalize UP and DP within a more general framework, the Powered Dirichlet process (PDP), and show it performs better than DP on several datasets.

Moreover, it has recently been highlighted that DHP does not work well when the textual information within documents conveys little information, that is when the text is short [START_REF] Yin | Model-based clustering of short text streams[END_REF] or when vocabularies overlap significantly. To answer this problem, the authors develop an approach based on Dirichlet process mixtures, which is not designed for continuous-time document streams -the temporal aspect comes from a sampling function as in [START_REF] Ahmed | Dynamic non-parametric mixture models and the recurrent chinese restaurant process: with applications to evolutionary clustering[END_REF], [START_REF] Blei | Distance dependent chinese restaurant processes[END_REF]. There are other limiting cases for DHP, for instance when temporal information is conveys little information (few observations, overlapping temporal intensities) or when documents within textual clusters do not follow the same temporal dynamics. To overcome those limitations, we develop the Powered Dirichlet-Hawkes process in the next section.

III. MODEL AND ALGORITHM

A. Dirichlet prior and alternatives

We briefly recall the definition of a Dirichlet prior. A Dirichlet prior for clustering implements the assumption that the more a cluster is populated, the more chances a new observation belongs to it ("rich-get-richer" property). Besides, there is still a chance that a new observation gets assigned to a newly created cluster. It is often expressed using a metaphor, the Chinese Restaurant process (CRP), and it goes as follows: if an i th client arrives in a Chinese restaurant, they will sit at one of the K already occupied tables with a probability proportional to the number of persons already sat at this table. They can also sit alone at a new table K +1 with a probability inversely proportional to the total number of clients in the restaurant. When their choice is made, the next client arrives, and the process is repeated. Let c be the cluster chosen by the i th customer, C -the table assignment of previous customers up to i -1, N c the population of table c, C the number of already occupied tables and α 0 ∈ R + the concentration parameter. The process can be written formally as:

CRP(C i = c| C -, α 0 ) = Nc α0+N if c = 1, 2, ..., C α0 α0+N if c = C+1 (1)
The Uniform process [START_REF] Wallach | An alternative prior process for nonparametric bayesian clustering[END_REF] has been proposed as an alternative to the DP prior. In this context, a new customer entering the restaurant has an identical chance to sit at either of the occupied tables, and a chance to sit at an empty table inversely proportional to the number of occupied tables. Formally:

U-CRP(C i = c| C -, α 0 ) = 1 α0+C if c = 1, 2, ..., C α0 α0+C if c = C+1 (2)
Finally, the Powered Dirichlet process [START_REF] Poux-Médard | Powered dirichlet process for controlling the importance of "rich-get-richer" prior assumptions in bayesian clustering[END_REF] generalizes the two above, stating that the probability for a new client to sit at a new table depends arbitrarily on the number of customers already sat at this table:

P-CRP(C i = c|r, C -, α 0 ) =    N r c α0+ c N r c if c = 1, 2, ..., C α0 α0+ c N r c if c = C+1
(3) where r ∈ R + is an hyper-parameter. Varying r allows to give more or less importance to the "rich-get-richer" hypothesis of DP. Note that P -CRP (r = 0, C -, α 0 ) = U -CRP ( C -, α 0 ) and that P -CRP (r = 1, C -, α 0 ) = CRP ( C -, α 0 ). We will use this more general form in the rest of this work and make r vary to compare those priors in the experimental section.

B. Hawkes processes

A Hawkes process is defined as a self-stimulating temporal point process. It is used to determine the probability of an event happening given the realization of all previous events in a continuous space. Point processes are fully characterized by the intensity function λ(t), which is related to the probability P of an event happening between t and t + ∆t by λ(t) = lim ∆t→0

P (tevents∈[t;t+∆t]) ∆t
. In the case of Hawkes processes, λ(t) is defined conditionally on all the events that happened at times lower than t. In our setup, we define one Hawkes process for each cluster, independent from the others. The intensity of the Hawkes process associated with cluster c is defined as:

λ c (t|H <t,c ) = H<t,c α c T • κ(t i,c ) (4)
where t i,c is the time of the i th observed in cluster c,

H <t,c = {t i,c |t i,c < t} i=1,2,.
.. is the history of events in cluster c up to t, α c is a vector of coefficients, κ(t) is a vector of kernel functions with the same dimension as α and • represents the dot product. The kernel functions are set on stone. We will later infer the weights vector α to determine which entries of the kernel vector are the most relevant for a given situation. This technique has become standard in Hawkes processes modeling and used in several occasions [START_REF] Du | Learning networks of heterogeneous influence[END_REF], [START_REF] Yu | An influence-receptivity model for topic based information cascades[END_REF].

Finally, we consider an additional time-independent Hawkes process (that is a Poisson process) of intensity λ(t) = λ 0 . This process is used as the Dirichlet-Hawkes equivalent of the concentration parameter α 0 in a Dirichlet process (see Eq. 1). It translates the probability of opening a new cluster as the realization of a Poisson process. In the same way that in DP no observation is assigned to a cluster whose counts is α 0 but instead to a new cluster, no observation will be associated with the Poisson process but instead to a new Hawkes process. Finally, the likelihood of a combination of independent Hawkes processes can be written:

L( λ|H <T,c ) = L(λ 0 |H <T,c ) c L c (λ c |H <T,c ) = e -T 0 λ0dt c e -T 0 λc(t)dt ti,c λ c (t i |H <ti,c,c ) = e -λ0T + c T 0 λc(t|H<t,c)dt t i,c ,c =c λ c (t i,c |H <t i,c ,c ) (5)
where T is the upper time of the considered observation window, going from 0 to T . Note that L(λ 0 ) = e -T 0 λ0dt

because no event will be assigned to the Poisson process.

C. Powered Dirichlet-Hawkes process

Following the reasoning in [START_REF] Du | Dirichlethawkes processes with applications to clustering continuous-time document streams[END_REF], we substitute the counts N k of the PDP with the inferred Hawkes intensities in the Fig. 1. Schematic workflow of the SMC algorithm -For each new observation from a stream of document, we run steps 1 (sample document's cluster), 2 (update sampled cluster's internal dynamics) and 3 (update particle hypothesis' likeliness) for each particle, and then discard particles containing the less likely hypothesis on cluster allocation. PDP, resulting in the following form for the Powered Dirichlet-Hawkes prior:

P (C i = c|t i , r, λ 0 , H <ti,c ) =    λ r c (ti) λ0+ c λ r c (ti) if c≤C λ0 λ0+ c λ r c (ti) if c=C+1 (6
) where t i is the arrival time of document i. We reformulated the Dirichlet-Hawkes process in order to allow nonlinear dependence (r) on the non-integer counts ( λ).

D. Textual modeling

We choose to model the textual content of documents as the result of a Dirichlet-Multinomial distribution. This model is purposely simple to ease the understanding, but can easily be replaced by a more complex one. A more complete textual modeling is out of the scope of this work, which aims to highlight the efficiency of the PDHP. Here, a document will be associated to a given cluster according to words count in every cluster and words count in the document only. The generative process is as follows:

θ i ∼ Dir(θ 0 ) ; ω v,i ∼ M ult(θ i ) (7)
where θ i is the cluster of document i, and ω v,i is the v th word of document i. Let L txt ( C <i,c |N <i,c , θ 0 ) be the marginal joint distribution of every document's cluster allocation up to the i th one. The likelihood of the i th document belonging to cluster c can then be expressed as:

L(C i = c|N <i,c , n i , θ 0 ) = P (n i |C i = c, N <i,c , θ 0 ) = L txt ( C <i,c |N <i,c , θ 0 ) L txt ( C <i-1,c |N <i,c , θ 0 ) = Γ(θ0) Γ(Nc+ni+θ0) v Γ(Nc,v+ni,v+θ0,v) Γ(θ0,v) Γ(θ0) Γ(Nc+θ0) v Γ(Nc,v+θ0,v) Γ(θ0,v) = Γ(N c + θ 0 ) Γ(N c + n i + θ 0 ) v Γ(N c,v + n i,v + θ 0,v ) Γ(N c,v + θ 0 ) (8)
where N c is the total number of words in cluster c from observations previous to i, n i is the total number of words in document i, N c,v the count of word v in cluster c, n i,v the count of word v in document i and θ 0 = v θ 0,v .

E. Posterior distribution

The resulting posterior distribution of the i th document over clusters is calculated using Bayes theorem. It is proportional to the product of the textual likelihood Eq.5 and the temporal Powered Dirichlet-Hawkes prior Eq.8: We recall that λ c (t) is defined Eq. 4. The textual likelihood of cluster C + 1 is computed by setting N C+1,v = 0.

P (C i = c|r, n i , t i , N c , H <t,c ) ∝ P (n i |C i = c, N <i,c , θ 0 ) Textual likelihood P (C i = c|t i , r, λ 0 , H <ti,c ) Temporal prior = Γ(N c + θ 0 ) Γ(N c + n i + θ 0 ) v Γ(N c,v + n i,v + θ 0,v ) Γ(N c,v + θ 0 ) ×    λ r c (ti) λ0+ c λ r c (ti) if c = 1, ..., C λ0 λ0+ c λ r c (ti) if c = C+1 (9)

F. Algorithm and changes induced by PDHP

We use a similar algorithm to the one in [START_REF] Du | Dirichlethawkes processes with applications to clustering continuous-time document streams[END_REF]. Briefly, the algorithm is a sequential Monte-Carlo (SMC) that takes one document at a time in their order of arrival. The algorithm starts with a number N part of particles whose weights are

ω p = 1
Npart , each of which will keep track of a hypothesis on documents clusters. After a few iterations, particles that contained unlikely allocation hypotheses are discarded and replaced by more likely ones. The likeliness of a hypothesis is encoded in the weights of each particle ω p .

For each particle, when a new document arrives, (1) the cluster of the document is sampled according to a Categorical distribution over all clusters, whose weights are determined by Eq. 9. After the cluster of the new document has been sampled, (2) the kernel weights α from Eq. 4 are updated using Eq. 5.

For efficiency purpose, we infer α using Gibbs sampling from a set of N s pre-computed α vectors. We finally (3) update the weights ω p of each particle according to the posterior Eq. 9 such as ω

(n+1) p = ω (n)
p ×Eq. 9. If the weight of a particle falls below a value ω thres , the particle is discarded and replaced by another existing one with sufficient weight. The whole process is illustrated Fig. 1. By updating incrementally the likelihood associated with each of the pre-computed α sample vectors, the algorithm treats each new observation in constant time O [START_REF] Blei | Latent dirichlet allocation[END_REF].

The task of updating kernels coefficients (2) is the same as in any Hawkes process, and the task of updating particles weights and resampling them (3) is common to any SMC algorithm. The change induced by the PDHP compared to the DHP happens at step [START_REF] Blei | Latent dirichlet allocation[END_REF]. First of all, we note that for r = 1 the PDHP prior is identical to the DHP prior. From [START_REF] Poux-Médard | Powered dirichlet process for controlling the importance of "rich-get-richer" prior assumptions in bayesian clustering[END_REF], lowering the value of r reduces the "rich-get-richer" aspect of the PDP ("rich-get-less-richer"), whereas increasing it leads to a "rich-get-more-richer" effect. These metaphors can be translated as follows in our temporal context: for lower values of r, the relative difference between cluster's temporal intensities plays a less important role in cluster selection, whereas higher values of r tend to exacerbate these differences and make the temporal aspect of the greatest consequence on the choice of a cluster. In other words, tuning the value of r allows to give more or less importance to the temporal aspect of the clustering. This is illustrated in Fig. 2, where we plot the probability for various clusters to be chosen (which is directly proportional to the posterior distribution, Eq. 9) according to r when their textual likelihood and Hawkes process intensity is known. Note that for r = 0, the probability for any cluster to get chosen is directly proportional to its textual likelihood (Dirichlet-Uniform process), whereas when r increases, the probability of getting chosen gets closer to a selection only based on the temporal aspect.

This makes the main interest of the PDHP model. Tuning the parameter r allows one to choose whether inferred clusters are based on textual or temporal considerations. It generalizes several state-of-the-art works, which are special cases of the PDHP for different values of r. The DHP [START_REF] Du | Dirichlethawkes processes with applications to clustering continuous-time document streams[END_REF] is equivalent to PDHP for r = 1; the UP [START_REF] Wallach | An alternative prior process for nonparametric bayesian clustering[END_REF] is equivalent to PDHP when r = 0. In the following sections, we show how fine-tuning r systematically yields significantly better results than setting it to r = 0 or r = 1 (up to a gain of 0.3 on our experiments' normalized mutual information metric). We also show how varying it allows to recover one kind of clustering or the other (textual or temporal) with high accuracy and see how it affects clustering results on several real-world datasets.

IV. EXPERIMENTS A. Synthetic data generation

We simulate a case where only two clusters are considered. Each cluster has its own vocabulary distribution over 1 000 words and its own kernel weights α, with Gaussian Hawkes kernel functions κ(t) of parameters (µ, σ)=(3, 0.5), (7, 0.5) and (11, 0.5) (see Eq. 4). Finally, we set λ 0 = 0.05. We first simulate one independent Hawkes process per cluster using the Tick Python library [START_REF] Bacry | Tick: A python library for statistical learning, with an emphasis on hawkes processes and time-dependent models[END_REF]. The processes are stopped at time t = 1500, which makes a rough average of 7 000 events per run. Then we associate each simulated observation with a sample of 20 words drawn from the corresponding cluster's word distribution. Inference has been performed using a 8 core processor (i7-7700HQ) with 8GB of RAM on a laptop, which underlines how scalable the algorithm is. As stated before, the algorithm treats each new document in constant time O(1), which ranged from 0.05s on synthetic data to maximum 1s on real-world data. Note that this number is directly proportional to the number of active inferred clusters, and thus depends strongly on the dataset.

We generate ten such datasets for every considered value of vocabulary overlap and Hawkes intensities overlap, which leave us with ∼200 datasets. Overlap is defined as the common area of two distributions, normalized by the total area under the distributions. For example, if the vocabulary of one cluster Fig. 3. Overlaps -(Left) Temporal overlap is defined as the ratio between the area common to two Hawkes intensities and the total area under the intensity functions. (Right) Textual overlap is defined as the proportion of vocabulary that is common to two clusters, weighted by the probability of words within their respective cluster. ranges from words "1" to "100" with uniform distribution, and the vocabulary of another cluster from words "50" to "150" with uniform distribution, the overlap equals 50%. We define the overlap of Hawkes process intensity in the same way. If the triggering Hawkes kernel of one cluster is a Gaussian function with (µ, σ) = (3, 1) and one associated observation at t = 0, and the triggering kernel of the other is also a Gaussian function but with (µ, σ) = (5, 1) also with an associated observation at t = 0, the overlap equals 32% (see Fig. 3). When computing the Hawkes intensity overlap, every observation within a cluster and its associated timestamp are considered. The definition of overlaps is illustrated in Fig. 3. To enforce a given vocabulary overlap (Fig. 3-right), we shift the word distributions of the clusters from which events' vocabulary is sampled. To enforce a given Hawkes intensities overlap (Fig. 3-left), we shift the event times of every event in one of the clusters until we get the correct overlap (±5%).

Note that we consider ten different datasets instead of considering ten runs per dataset for two reasons. Firstly, the generation of Hawkes processes is highly stochastic, so a model might perform significantly better on a single dataset only by chance. Secondly, given the way the SMC algorithm works, the standard deviation between runs is small: at each iteration, N part clustering hypotheses are tested, which is equivalent to running N part times a single clustering algorithm. We heuristically set N part = 8, as we observe no significant improvement using more particles.

The other parameters we use for clustering synthetic data are: α 0 = 0.1, θ 0 = 1, κ(t) = [G(t; 3, 0.5), G(t; 7, 0.5), G(t; 11, 0.5)] with G(t; µ, σ) the Gaussian function, N samples = 2.000 and ω thres = 1 2Npart . 1 We are interested in varying both vocabulary and intensities overlap to exhibit the limits of DHP and how PDHP overcomes them. Note that in the synthetic data experiments in [START_REF] Du | Dirichlethawkes processes with applications to clustering continuous-time document streams[END_REF] (Figs. 3a and3b), the intensities overlap is almost null, which makes the task easier for the Hawkes part of the algorithm. The primary metric we use throughout the experimental section is the normalized mutual information (NMI). During the experiments, we also considered the Adjusted normalized rand 1 All codes and implementations are available at https://github.com/GaelPouxMedard/PDHP index and the V-measure, which are well adapted to evaluate clustering results when the number of inferred clusters is different from the true number of clusters. The observed trends in results from these other metrics are identical to the ones observed for NMI. Therefore we choose to report only the results of the latter for clarity. These additional measurements are provided in the linked repository along with the code and datasets.

B. PDHP yields better results as vocabulary overlap increases

We report our results when the intensities overlap is null, with varying r and the vocabulary overlap in Fig. 5a. Because we consider ten different datasets for each set of overlap parameters, it makes no sense to report the absolute average NMI since it can vary greatly from one dataset to the other. Instead, we plot the relative NMI difference between PDHP and DHP (r = 1), which we expect to be less dependent on the datasets we consider. However, to give an idea of the typical performance for some parameters, we also provide raw results for one run in Fig. 4.

There is a clear correlation between efficiency, vocabulary overlap and r, with a gain on NMI up to +30% of its maximal value over DHP. As stated at the end of the "Model" section, this result was expected: the more vocabulary overlap grows, the less textual content carries valuable information for clustering the documents. This observation supports the concerns raised in [START_REF] Yin | Model-based clustering of short text streams[END_REF] about the efficiency of DHP for clustering short text documents. However, Hawkes intensities overlap being null, the arrival time of events carries highly valuable information when textual content does not allow to distinguish clusters well. Therefore, PDHP provides a way to tackle the problem raised in [START_REF] Yin | Model-based clustering of short text streams[END_REF] without the need to sample observations. Conversely, when vocabulary overlap is null, the textual content provides enough information to distinguish clusters correctly. The temporal dimension only allows refining the results with no significant improvement for all values of r.

Finally, we can see how the Dirichlet-Uniform process (DUP, r = 0) consistently yields worse performances under these settings. Once again, this is expected since, in this synthetic experiment, intensities overlap carry valuable information about events clustering; DUP only considers textual information and therefore misses valuable clues.

C. PDHP yields similar results for null vocabulary overlap

We report similar results in Fig. 5b. Here, we consider a null vocabulary overlap for various values of r and of Hawkes intensities overlap. The situation is now the opposite: the textual content always carries valuable information about clusters, whereas the temporal aspect does not. We observe the same trend as in Fig. 5a -note that the color scale is the same. Varying the value of r does not significantly change the performances of clustering, meaning the textual content always carries enough information. This plot shows that PDHP can handle greater intensities overlap without collapsing into unrealistic clustering. Since in most real-case applications, many clusters with various dynamics may coexist simultaneously, it is comforting that the PDHP can also handle this case. Fig. 6. Textual (orange) and temporal (blue) NMI vs r when textual and temporal clusters are decorrelated -From top-left to bottom-right, there are 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80% and 90% of generated events that have been randomly re-assigned a textual cluster. The orange curves are the textual NMI vs r, that evaluate how well events whose vocabulary has been sampled from the same distribution are clustered together; the blue curves are the temporal NMI vs r, that evaluate how well events following the same temporal dynamic are correctly clustered together. Values presented are for one dataset. We clearly see that varying r allows to retrieve the right temporal (r large) or textual clusters (r small).

D. PDHP yields better results in more realistic situations

We finally report the results for intermediate values of intensities and vocabulary overlaps in Fig. 5c. In real-world applications, it seldom happens that topics vocabularies do not overlap at all. For example, a quick analysis of The Gutenberg Webster's Unabridged Dictionary by Project Gutenberg shows that there are 22% of English words that are associated with more than one definition. A more detailed analysis would need to consider the usage frequency of words to get correct statistics. Still, this number provides an estimate of the effective vocabulary overlap in real-world situations.

In Fig. 5c, we present the results for a fixed vocabulary overlap of 0.5 for various values of r and intensities overlap. Once again, we see that, on average, using PDHP can increase the NMI over DHP up to +20% of the maximum possible value.

E. PDHP finds textual or temporal clusters depending on r

We now slightly modify our experimental setup. Instead of considering that textual clusters and Hawkes intensities are perfectly correlated, we consider a decorrelated case. A document whose vocabulary is drawn from cluster C 1 can now follow the same temporal dynamics as cluster C 2 . If we imagine a dataset of news articles published online, it is clear why this might happen frequently. If popular newspapers such as New York Times or Reuters publish an article on topic A at time t, it is likely to trigger snowball publications of similar articles from less popular journals. "Popularity" is chosen as an indicator in this example, but it may be any other external parameter (centrality in news networks, support of publications, etc.). In this case, the article's textual content allows to uncover a "story of publication", that is, Fig. 7. Varying r allows to choose between textual or temporal clustering -The black line plots the difference between the NMI of textual and temporal clustering. For small r, textual clustering is far better than temporal clustering, and for large r, the situation is reversed. This is because r determines the importance given to the temporal dimension and therefore allows choosing between retrieving temporal or textual clusters.

how the article has been spread, when publication spikes are, etc. However, the temporal information would help understand the dynamics of publications interaction: which reduced set of articles triggered the publication of subsequent ones.

In [START_REF] Du | Dirichlethawkes processes with applications to clustering continuous-time document streams[END_REF], it is assumed that every document within clusters follow a unique dynamics. We relax this hypothesis in our datasets as follows. For null textual and temporal overlaps, after a dataset has been generated, we resample the textual clusters of a fraction of randomly selected events, as well as the words associated with the event. Doing so, we decorrelate temporal and textual clusters. Therefore, an event is now described by two cluster indicators: its temporal cluster (which Hawkes intensity made the event appear where it is) and a textual cluster (which vocabulary has been used to sample the words the event contains).

For completeness, we also show the results for for various decorrelations for one run in Fig. 6. To better understand the tendency of NMIs with respect to r, we plot the average difference between the NMI of textual clustering and the NMI temporal clustering over all the datasets. Explicitly: ∆N M I = N M I text -N M I temp . The results are reported in Fig. 7.

As supposed at the end of the "Model" section, varying r allows retrieving one clustering or the other. Note that the value r of transition from text to time clustering depends directly on the dataset considered: number of words sampled, vocabulary size, overlaps, etc.

F. PDHP efficiently infers the temporal dynamics of each cluster

Finally, we mention that PDHP correctly infers kernels' parameters in every situation where events are correctly assigned to their temporal cluster. We looked at the mean absolute error (MAE) between the vector α used to generate the dataset and the inferred one. When documents are correctly classified, the MAE according to the actual α entries is systematically lower than 0.1. We do not discuss this metric further because it is directly correlated to the NMI metric. If documents are correctly classified, the inferred intensity function is based on the correct observations and corresponds to the one used for data generation. If documents are not correctly classified, the inferred intensity function is close to the optimal one (∼ 5% MAE) given the available information but may be far from the one used to generate datasets because events are misclassified.

G. Real-world application on Reddit

We use the PDHP prior to model real streams of textual documents. We consider three Reddit datasets2 about different topics. The News dataset is made of 73.000 titles extracted from the subreddits inthenews, neutralnews, news, nottheonion, offbeat, open news, qualitynews, truenews and worldnews, from April 2019. We chose this month because of the wide variety of events that happened then (for instance, Sri Lanka Easter bombings, Julian Assange arrest, first direct picture of a black hole, Notre-Dame cathedral fire). We also consider 15.000 post titles of the subreddit TodayILearned (TIL dataset) and 13.000 post titles of the subreddit AskScience (AskScience dataset) on January 2019. We extracted the nouns, verbs, adjectives and symbols from the textual data. We run the experiments using the following parameters: α 0 = 0.5, θ 0 = 0.01, N samples = 2.000, N part = 8 and ω thres = 1 2Npart . The kernel vector κ is made of Gaussian functions, with means located at 0.5, 1, 4, 8, 12, 24, 48, 72, 96, 120, 144 and 168 hours. The variance of each are set to 1, 1, 3, 8, 12, 12, 24, 24, 24, 24, 24 and 24 hours. The algorithm will then infer the weights α associated with each entry of the kernel vector κ for each cluster.

1) PDHP recovers meaningful stories: As an illustrative example, we consider the inferred clusters the most related to Sri Lanka easter bombings of April 21 st 2019 in Fig. 8. We plot the triggering kernels on a log-log scale, because most of the intensity is focused on small times: dynamics of information spread are bursty [START_REF] Karsai | Bursty Human Dynamics[END_REF]. We see that inferred dynamics change with r, which is expected since clusters do not contain the same documents. For r = 0, the Uniform process makes clusters based on textual information only; the triggering kernel is inferred afterward. For r = 2.5 on the contrary, clusters are formed based on the triggering kernel, and textual information follows; we see from the right-plot that this cluster captures publications exhibiting a daily intensity cycle. Given the intensity spikes on 21 st , 22 nd , and 23 rd , it is not surprising that articles about Sri Lanka bombings are also part of this cluster. Note that the more r increases, the more intense the triggering kernel is around 24h. We see from Fig. 8 that DHP is a specific case of the dynamics one can retrieve using temporal information.

2) PDHP favors temporal or textual clustering depending on r: We report the values of log-likelihoods for every dataset and various values of r in Fig. 9. The textual likelihood is defined Eq.8, and the likelihood of a Hawkes process is defined Eq.5. Note that r does not appear in any of these expressions. Those likelihoods evaluate how well the textual or 3) PDHP infers sharper textual clusters for low r: We evaluate how meaningful textual cluster are using entropy. We would like a set of words within a cluster to carry a meaningful information. A way to measure this is to see how spread the vocabulary of a cluster is. Let N c,v be the count of word v in cluster c. The normalized Shannon entropy of a cluster c is defined as:

S( N c ) = 1 -log(V ) V v log( N c,v v N c,v ) N c,v v N c,v (10)
An entropy of 0 means the vocabulary of the cluster is concentrated on a single word; an entropy of 1 means that every of the V words is present to the same extent. In Fig. 10, we plot the mean entropy for various values of r for all the datasets, along with the standard error over the clusters. The results show that vocabulary is more concentrated within clusters for low values of r. The inflection point of the curves corresponds to what has been previously observed with likelihoods in Fig. 9. On the contrary, higher values of r lead to clusters that comprise a less dense vocabulary. This is expected because as r increases, the textual information is no longer the most relevant data for cluster formation.

V. CONCLUSION We built the Powered Dirichlet-Hawkes process as a generalization of the Dirichlet-Hawkes process and Uniform process and showed how it improves performance on various datasets. When textual information conveys little information, or when temporal information conveys little information, and when both do, our model is able to correctly retrieve the original clusters used in the generation process with high accuracy. A central consideration in document clustering is that there are no "right" clusters. For instance, we illustrate how textual content and temporal dynamics can be decorrelated in real-life applications. The framework we developed is flexible enough to allow users to choose the weight they wish to give to temporal or textual information depending on the situation; when textual and temporal clusters are decorrelated, the model allows one to choose which of those to infer.

Many future extensions are possible for PDHP. For instance, it would be interesting to develop its hierarchical version (PHDHP) as it has already been done with HDHP for DHP. Another interesting perspective would be to create a version considering multivariate Hawkes processes to study how textual clusters' dynamics relate to each other. Given several recent works have been based on the regular Dirichlet-Hawkes process, it would be insightful to study how their results vary when using the Powered Hawkes-Dirichlet process instead. A study on the influence of the language model used along with PDHP would also be interesting since the text model we used here was simple on purpose (our focus being on the PDHP prior and not on the model it gets associated with).

Finally, it would be interesting to see how this model would work in another context where temporal and textual information are intertwined. For instance, in latent social network inference, we may be able to create clusters according to the observed temporal dynamics of publications, or according to the textual information shared between users, or according to a combination of both.

Fig. 2 .

 2 Fig. 2. Effect of r on cluster selection probabilities -The probability for each cluster to get chosen (solid lines) for several values of r and fixed individual textual likelihood (blue bars) and Hawkes intensity (orange bars).

Fig. 4 .

 4 Fig. 4. PDHP yields good NMI values -Normalized mutual information (NMI) for various values of r, intensities overlap and vocabulary overlap, for one dataset per combination. The results for r = 0 are the output of the Uniform process, the results for r = 1 are the output of the DHP [8], and the other values of r correspond to other special cases of PDHP. The darker the better. Overall, PDHP yields good values of NMI.

Fig. 5 .

 5 Fig. 5. PDHP performs better than DHP -Difference between the normalized mutual information (NMI) of PDHP and DHP model [8] for various values of r, intensities overlap and vocabulary overlap, averaged over all the datasets. Red means PDHP performed better, blue means PDHP performed less well. Because PDHP(r = 1)=DHP, the column r = 1 show no difference. PDHP allows to increase results on NMI by as much as 0.3 over DHP.

Fig. 8 .

 8 Fig. 8. Wordclouds, triggering kernels and intensities for clusters the most closely related to Sri Lanka 2019 bombings for various values of r. The points at the bottom of the intensity plots are individual publication events. Note that triggering kernels are plot on a log-log scale for visualisation purpose, because most of the intensity is focused on small times: dynamics are bursty.

Fig. 9 .Fig. 10 .

 910 Fig. 9. r allows to favour text-based of time-based clustering on real world datasets -Textual likelihood and Hawkes process likelihood for various values of r.The lower r the higher textual likelihood is, and the higher r the higher Hawkes process likelihood is.

Available for download at https://files.pushshift.io/reddit/submissions/