Topic Tracking

TopicTracking.py - Topic tracking interface

Copyright CUED Dialogue Systems Group 2015 - 2017

See also

CUED Imports/Dependencies:

import utils.Settings
import utils.ContextLogger
import ontology.OntologyUtils


class topictracking.TopicTracking.TopicTrackingManager

Interface for all topic tracking

restart()

# Start with control where? Single domain –> with its manager, Multi-Domain –> with topicmanager

track_topic(userAct_hyps=None, domainString=None)

# CURRENT ASSUMPTION: ONLY ONE DOMAIN CAN BE ACTIVE IN EACH TURN. Sets member variables: operatingDomain

RuleTopicTrackers.py - Rule based topic trackers

Copyright CUED Dialogue Systems Group 2015 - 2017

See also

CUED Imports/Dependencies:

import utils.Settings
import utils.ContextLogger
import ontology.OntologyUtils


class topictracking.RuleTopicTrackers.KeywordSpottingTopicTracker

Just a hacky topic tracker to develop voicehub with. :: Assumptions/Notes – To resolve resturants and hotels will also have to spot location – Assume we will stick with last domain unless we detect one of our keywords

infer_domain(userActHyps=None)

– Assumptions: Only working with the top hypothesis from ASR – Stick to last domain if nothing spotted in this turn – ORDER IS IMPORTANT – ie it will hand off to FIRST domain a keyword is spotted in

class topictracking.RuleTopicTrackers.TextBasedSwitchTopicTracker

When using texthub, you can enter: switch(“CamRestaurants”) which will change domains to CamRestaurants for example. – if switch(“XX”) not entered, assumes you want to stay in domain of previous turn

infer_domain(userActHyps=None)

userActHyps : [(text, prob)]

class topictracking.RuleTopicTrackers.TopicTrackerInterface

Template for any Topic Tracker for the cued-python system