Skip to content

Service Modeler

Carlos Badenes edited this page Mar 31, 2016 · 1 revision

This module creates models using the documents of a domain.

All the models are built per domain, but they can work in five different levels of representation: domain, document, item, part and word. So, a domain could be represented, for example, by a topic model as a set of topics. i.e. ranked list of words. A document, in the same domain, could be represented by the same topic model as a vector of probabilities to belong to these topics, or by other topic model as a set of topics or even by a distributed representational model as a set of related terms. The idea here is to create enough representative models able to emphasize the main aspects of the resource.

modeler

In the current version of the system, this module will build two types of models:

  • A topic model, using the Latent Dirichlet Allocation (LDA) method, for each domain. So, a domain will be represented by a set of topics, i.e. ranked list of words, and the documents from that domain will be represented by a vector of probabilities to belong to these topics.
  • A distributed representational model, using the Word2Vec (W2V) method, for each word in every domain.

Continuous works in this area will include new models to this module.

Routing-keys

These are the routing-keys from the event-bus that this module is listening for or publishing to:

Listen for

  • domain.{closed}
  • document.{closed} (temporarily when a domain is closed)
  • item.{closed} (temporarily when a domain and a document are closed)

Publish to

  • domain.{marked|analyzed}
  • model.{new}

Use-Case

Once an event-message has been received from the event-bus in the channel domain.closed, this module will check that all the documents (and items) inside it are closed too. If any of them was open, then it will temporarily listen for event-messages related to that type of resource, i.e. document.closed and/or item.closed, to be notified when all the elements in a domain are closed.

When all the documents and items of a closed domain are closed too, will modify the domain to set the marked state and will start to build new models for that domain. For each new model built, an event-message will be published in the channel: model.new with the uri of the model (e.g. models/d1-lda).

Finally, a new event-message will be published in the channel: domain.analyzed when all the models have been built.

modeler-use-case

Clone this wiki locally