Menu Close

Visual Analytics for Topic Model Optimization


Mennatallah El-Assady, Fabian Sperrle, Oliver Deussen, Daniel Keim, and Christopher Collins

To effectively assess the potential consequences of human interventions in model-driven analytics systems, we establish the concept of speculative execution as a visual analytics paradigm for creating user-steerable preview mechanisms. This paper presents an explainable, mixed-initiative topic modelling framework that integrates speculative execution into the algorithmic decision-making process. Our approach visualizes the model-space of our novel incremental hierarchical topic modelling algorithm, unveiling its inner workings. We support the active incorporation of the user’s domain knowledge in every step through explicit model manipulation interactions. In addition, users can initialize the model with expected topic seeds, the backbone priors. For a more targeted optimization, the modelling process automatically triggers a speculative execution of various optimization strategies, and requests feedback whenever the measured model quality deteriorates. Users compare the proposed optimizations to the current model state and preview their effect on the next model iterations, before applying one of them. This supervised human-in-the-loop process targets maximum improvement for minimum feedback and has proven to be effective in three independent studies that confirm topic model quality improvements.

As seen on SpecEx.


  • M. El-Assady, F. Sperrle, O. Deussen, D. Keim, and C. Collins, “Visual Analytics for Topic Model Optimization based on User-Steerable Speculative Execution,” IEEE Transactions on Visualization and Computer Graphics, 2018.


    author = {Mennatallah El-Assady and Fabian Sperrle and Oliver Deussen and Daniel Keim and Christopher Collins},
    journal = {IEEE Transactions on Visualization and Computer Graphics},
    publisher = {IEEE},
    title = {Visual Analytics for Topic Model Optimization based on User-Steerable Speculative Execution},
    year = {2018},
    URL = {}