示例#1
0
def classify(text):
    if detect_language(text) != 'ko':
        language = detect_language(text)
        text = translater(text)
    else:
        language = 'ko'
    text = spellchecker(text)
    word = []
    word.append(text)
    tokenizer = Twitter()
    word = [tokenizer.morphs(row) for row in word]
    with open('./model/tokenizer.pickle', 'rb') as handle:
        tokenizer = pickle.load(handle)
    sequences_test = tokenizer.texts_to_sequences(word)
    data_int_t = pad_sequences(sequences_test,
                               padding='pre',
                               maxlen=(MAX_SEQUENCE_LENGTH - 5))
    data_test = pad_sequences(data_int_t,
                              padding='post',
                              maxlen=(MAX_SEQUENCE_LENGTH))
    model = load_model('./model/train_model.h5')
    y_prob = model.predict(data_test)
    for n, prediction in enumerate(y_prob):
        pred = y_prob.argmax(axis=-1)[n]
        if pred < 2.0:
            return ("질문을 이해하지 못했어요. 다시 입력해주세요.")
        else:
            if language == 'ko':
                return (classes[pred])
            else:
                return (translater(classes[pred], language))