Пример #1
0
def test_wordsim_evaluation():
    from sematch.evaluation import WordSimEvaluation
    from sematch.semantic.similarity import WordNetSimilarity
    wordsim_eval = WordSimEvaluation()
    wns = WordNetSimilarity()
    #define similarity metrics
    lin = lambda x, y: wns.word_similarity(x, y, 'lin')
    wpath = lambda x, y: wns.word_similarity_wpath(x, y, 0.8)
    #evaluate similarity metrics
    assert wordsim_eval.evaluate_multiple_metrics({'lin':lin, 'wpath':wpath}, 'noun_simlex') is not None
    #performa Steiger's Z significance Test
    assert wordsim_eval.statistical_test('wpath', 'lin', 'noun_simlex') is not None
Пример #2
0
def test_wordsim_evaluation():
    from sematch.evaluation import WordSimEvaluation
    from sematch.semantic.similarity import WordNetSimilarity
    wordsim_eval = WordSimEvaluation()
    wns = WordNetSimilarity()
    #define similarity metrics
    lin = lambda x, y: wns.word_similarity(x, y, 'lin')
    wpath = lambda x, y: wns.word_similarity_wpath(x, y, 0.8)
    #evaluate similarity metrics
    assert wordsim_eval.evaluate_multiple_metrics({
        'lin': lin,
        'wpath': wpath
    }, 'noun_simlex') is not None
    #performa Steiger's Z significance Test
    assert wordsim_eval.statistical_test('wpath', 'lin',
                                         'noun_simlex') is not None
Пример #3
0
def test_wordsim_evaluation():
    from sematch.evaluation import WordSimEvaluation
    from sematch.semantic.similarity import WordNetSimilarity
    evaluation = WordSimEvaluation()
    print evaluation.dataset_names()
    wns = WordNetSimilarity()
    # define similarity metrics
    wpath = lambda x, y: wns.word_similarity_wpath(x, y, 0.8)
    # evaluate similarity metrics
    print evaluation.evaluate_metric('wpath', wpath, 'noun_simlex')
    # performa Steiger's Z significance Test
    print evaluation.statistical_test('wpath', 'path', 'noun_simlex')
    wpath_es = lambda x, y: wns.monol_word_similarity(x, y, 'spa', 'path')
    wpath_en_es = lambda x, y: wns.crossl_word_similarity(
        x, y, 'eng', 'spa', 'wpath')
    print evaluation.evaluate_metric('wpath_es', wpath_es, 'rg65_spanish')
    print evaluation.evaluate_metric('wpath_en_es', wpath_en_es, 'rg65_EN-ES')
Пример #4
0
def test_simcat_classifier():
    from sematch.classification import SimCatClassifier
    from sematch.evaluation import ABSAEvaluation
    from sematch.semantic.similarity import WordNetSimilarity
    # defining similarity metric
    wns = WordNetSimilarity()
    sim_metric_jcn = lambda x, y: wns.word_similarity(x, y, 'jcn')
    sim_metric_wpath = lambda x, y: wns.word_similarity_wpath(x, y, 0.9)
    # loadding dataset
    absa_eval = ABSAEvaluation()
    X_train_16, y_train_16 = absa_eval.load_dataset('eval/aspect/ABSA16_Restaurants_Train_SB1_v2.xml')
    X_test_16, y_test_16 = absa_eval.load_dataset('eval/aspect/ABSA16_Restaurants_Train_SB1_v2.xml')
    # train the classifiers
    sim_jcn_classifier = SimCatClassifier.train(zip(X_train_16, y_train_16), sim_metric_jcn)
    sim_wpath_classifier = SimCatClassifier.train(zip(X_train_16, y_train_16), sim_metric_wpath)
    # evaluate the classifiers
    #absa_eval.evaluate(X_test_16, y_test_16, sim_jcn_classifier)
    #absa_eval.evaluate(X_test_16, y_test_16, sim_wpath_classifier)
    assert sim_jcn_classifier is not None
    assert sim_wpath_classifier is not None