Fantom: Solving the Coherence Problem via Crowdsourced Dialog Graphs

Crowdsourcing a self-evolving dialog graph

2019-08-08
Patrik Jonell, Per Fallgren, Fethiye Irmak Dogan, José Lopes, Ulme Wennberg, Gabriel Skantze
Summary
Problem
Method
Results
Takeaways
Abstract

The paper introduces "Fantom," a social chatbot framework that constructs a self-evolving dialog graph by combining real user interactions with crowdsourced system responses. Tested during the Amazon Alexa Prize 2018, it creates a structured, branching corpus that maintains conversation coherence through a persona-driven approach.

TL;DR

Researchers from KTH Royal Institute of Technology and Heriot-Watt University have developed a "self-evolving dialog graph" that bridges the gap between hand-coded reliability and data-driven scale. By crowdsourcing system responses to real-world user queries during the Alexa Prize 2018, they've created a dataset that is significantly more coherent and engaging than common sources like Reddit or movie subtitles.

The "Generic Response" Traps of Modern Chatbots

In the world of social AI, we often face a "Data Quality vs. Quantity" dilemma. Scraping billions of words from Reddit or Twitter (Twitter/X) provides scale but often results in bots that are rude, inconsistent, or frustratingly generic (the infamous "I don't know" loop). On the other hand, Wizard-of-Oz (WoZ) setups—where humans pretend to be the AI—are high quality but impossible to scale for millions of users.

The authors argue that the fundamental issue isn't just the data, but its topology. Most datasets are linear. Real conversations are branching.

Methodology: The Self-Evolving Graph

The core of the "Fantom" system is a Dialog Graph.

  • Nodes: Represent a class of synonymous utterances (either System or User).
  • Edges: Represent the flow. System node User node (what a user might say back). User node System node (how the bot should respond).

Crowdsourcing with a "Split" Persona

To keep the system's personality consistent across thousands of crowdworkers, the authors used a "Persona Pool." Instead of giving a worker a 5-page biography of the bot (which they would ignore), the system randomly selected 2 out of 30 attributes (e.g., "You like rock music," "You live in a digital cloud") for each task. This bite-sized framing ensured consistency without overwhelming the human authors.

Overall Architecture Figure 1: The branching structure of the dialog graph, showing the alternating flow between User (U) and System (S) nodes.

Scalability and Node Management

Scaling a graph to 50,000 nodes presents a "State Explosion" problem. The authors implemented several clever technical fixes:

  1. Tagging Named Entities: Instead of having a different branch for every movie, they used tags like {Movie_Title} linked to knowledge bases like Wikidata.
  2. Automatic Merging: Using similarity scores to combine "Yeah" and "Yes" nodes to prevent redundant branching.

Experimental Results: Quality over Quantity

The researchers compared their Dialog Graph to common corpora like OpenSubtitles, Reddit, Twitter, and Switchboard.

Performance Comparison Figure 2: Expert evaluation metrics across different datasets. The Dialog Graph dominates in Coherence and Continuity.

The results were striking:

  • Coherence: The Dialog Graph scored significantly higher than all other datasets.
  • Continuity: It was rated as the most helpful in keeping a conversation moving.
  • High Quality Pairs: 75% of the Dialog Graph's pairs were rated as high quality, while Reddit managed a dismal 19%.

Critical Insight & Conclusion

The "Fantom" approach proves that context matters more than volume. By grounding data collection in a branching graph structure and providing humans with specific persona-constraints, we can build social bots that feel "present" rather than just predicting the next most likely (and boring) token.

Limitations: While powerful, the graph still struggles with topical "drift"—for example, data collected during the 2018 World Cup becomes obsolete. Future work will likely need "temporal pruning" to keep the self-evolving graph relevant to the current year.

Find Similar Papers

Try Our Examples

  • Find recent papers that utilize dynamic graph structures or State Machine-based approaches to improve coherence in Large Language Model (LLM) chatbots.
  • What are the latest state-of-the-art methods for "Persona-based" dialogue generation, and how do they handle the trade-off between persona consistency and response variety?
  • Explore research investigating "Hybrid Crowdsourcing" where AI models and humans collaborate to prune or expand dialogue trees for open-domain social bots.
Contents
Fantom: Solving the Coherence Problem via Crowdsourced Dialog Graphs
1. TL;DR
2. The "Generic Response" Traps of Modern Chatbots
3. Methodology: The Self-Evolving Graph
3.1. Crowdsourcing with a "Split" Persona
4. Scalability and Node Management
5. Experimental Results: Quality over Quantity
6. Critical Insight & Conclusion