Esempio n. 1
0
def exc():
    # 5. Test
    tmp = store.loadTermData()
    termList = {'X': [i[0] for i in tmp], 'y': [int(i[1]) for i in tmp]}

    print('=======================================================')
    print('=> Term Classifying...')

    if (file_model):
        clf = store.loadClassifier(file=file_model)
    else:
        clf = store.loadClassifier()
    results = []

    for i in range(len(termList['X'])):
        preprocessd_term = preprocess(termList['X'][i])
        X = np.asarray([extractFeatureText(termList['X'][i], getFeatureNames())])
        y_hat = clf.predict(X)[0].tolist()[0]
        results.append(clf.predict(X)[0].tolist() + clf.predict_proba(X)[0].tolist() +
                       [1 if (y_hat != termList['y'][i]) else 0, preprocessd_term] + X[0].tolist())

    titles = ['TestCase', 'Term', 'Label', 'Predicted Label', 'Name Score', 'Address Score', 'Phone Score', 'Error', 'Preprocessed_Term'] + \
            getFeatureNames()

    tacc = sum([1 for (y1, y2) in zip(termList['y'], [result[0] for result in results]) if (y1 == y2)]) / len(termList['y'])

    if (file_model):
        store.saveTermTestResults(tacc, titles, termList, results, file=file_model + '_' + file_term_classify_result)

    else:
        store.saveTermTestResults(tacc, titles, termList, results, file=timeManage.getTime() + '_' + file_term_classify_result)

    return tacc
def exc():
    # 5. Test
    tmp = store.loadTermData()
    termList = {'X': [i[0] for i in tmp], 'y': [int(i[1]) for i in tmp]}

    print('=======================================================')
    print('=> Term Classifying...')

    if (file_model):
        clf = store.loadClassifier(file=file_model)
    else:
        clf = store.loadClassifier()
    results = []

    for i in range(len(termList['X'])):
        preprocessd_term = preprocess(termList['X'][i])
        X = np.asarray([extractFeatureText(termList['X'][i])])
        results.append(clf.predict(X)[0].tolist() + clf.predict_proba(X)[0].tolist() +
                       ['', preprocessd_term] + X[0].tolist())

    titles = ['TestCase', 'Term', 'Label', 'Predicted Label', 'Name Score', 'Address Score', 'Phone Score', '', 'Preprocessed_Term'] + \
            feature_names

    tacc = sum([1 for (y1, y2) in zip(termList['y'], [result[0] for result in results]) if (y1 == y2)]) / len(termList['y'])

    if (file_model):
        store.saveTermTestResults(tacc, titles, termList, results, file=file_model + '_' + file_term_classify_result)
    else:
        store.saveTermTestResults(tacc, titles, termList, results, file=timeManage.getTime() + '_' + file_term_classify_result)

    return tacc
Esempio n. 3
0
def test(feature_func, preprocessing_func):
    # 4. Test
    termList = store.loadTermData()

    print('=======================================================')
    print('=> Term Classifying...')
    # _time, templateList = sg.parseAddress(termList, feature_func, preprocessing_func)

    clf = store.loadClassifier()
    results = []

    for i in range(len(termList['X'])):
        preprocessd_term = eval('preprocessing(termList[\'X\'][i])')
        X = np.asarray([
            extractFeatureText(feature_func, preprocessing_func,
                               termList['X'][i])
        ])
        results.append(
            clf.predict(X)[0].tolist() + clf.predict_proba(X)[0].tolist() +
            ['', preprocessd_term] + X[0].tolist())



    titles = ['TestCase', 'Term', 'Label', 'Predicted Label', 'Name Score', 'Address Score', 'Phone Score', '', 'Preprocessed_Term'] + \
            feature_names

    store.saveTermTestResults(titles, termList, results)
Esempio n. 4
0
def parseAddress(textList, file_model=None):
    if (file_model):
        clf_model = store.loadClassifier(file=file_model)
    else:
        clf_model = store.loadClassifier()
    _time = []
    templateList = []

    print('=======================================================')
    print('=> Address Parsing...')
    for (i, text) in zip(range(len(textList)), textList):
        print('==> Parsing text ' + str(i) + '...')
        millis_S = int(round(time.time() * 1000))
        ptemplates = templateSegment(text, nterm)
        templates = templateFiler(clf_model, ptemplates)
        millis_E = int(round(time.time() * 1000))
        _time.append((millis_E - millis_S)/1000)

        templateList.append(templates)

    return (_time, templateList)
Esempio n. 5
0
def parseAddress(textList, file_model=None):
    if (file_model):
        clf_model = store.loadClassifier(file=file_model)
    else:
        clf_model = store.loadClassifier()
    _time = []
    templateList = []

    print('=======================================================')
    print('=> Address Parsing...')
    for (i, text) in zip(range(len(textList)), textList):
        print('==> Parsing text ' + str(i) + '...')
        millis_S = int(round(time.time() * 1000))
        ptemplates = templateSegment(text, nterm)
        templates = templateFiler(clf_model, ptemplates)
        millis_E = int(round(time.time() * 1000))
        _time.append((millis_E - millis_S) / 1000)

        templateList.append(templates)

    return (_time, templateList)