Exemple #1
0
def test_drop_intents_below_freq():
    td = training_data.load_data('data/examples/rasa/demo-rasa.json')
    clean_td = drop_intents_below_freq(td, 0)
    assert clean_td.intents == {'affirm', 'goodbye', 'greet', 'restaurant_search'}

    clean_td = drop_intents_below_freq(td, 10)
    assert clean_td.intents == {'affirm', 'restaurant_search'}
Exemple #2
0
def test_drop_intents_below_freq():
    td = training_data.load_data('data/examples/rasa/demo-rasa.json')
    clean_td = drop_intents_below_freq(td, 0)
    assert clean_td.intents == {'affirm', 'goodbye', 'greet',
                                'restaurant_search'}

    clean_td = drop_intents_below_freq(td, 10)
    assert clean_td.intents == {'affirm', 'restaurant_search'}
Exemple #3
0
def cross_validation(data_path, config_path):
    # same as rasa_nlu's evaluate interface
    data = training_data.load_data(data_path)
    data = drop_intents_below_freq(data, cutoff=5)

    # same as rasa_nlu's evaluate interface
    default_folds = 10

    # same as rasa_nlu's evaluate interface
    nlu_config = config.load(config_path)

    intent_results, entity_results = run_cv_evaluation(data, default_folds,
                                                       nlu_config)

    template_result = {
        'intent': {
            'train': {},
            'test': {}
        },
        'entity': {
            'train': {},
            'test': {}
        },
    }

    set_template_result(intent_results.train,
                        template_result['intent']['train'])
    set_template_result(intent_results.test, template_result['intent']['test'])

    set_template_result(entity_results.train.values()[0],
                        template_result['entity']['train'])
    set_template_result(entity_results.test.values()[0],
                        template_result['entity']['test'])

    return template_result