import pickle file = open('./Data/T2_data_train.pt', 'rb') df = pickle.load(file)[:120] German_corpus = Corpus() English_corpus = Corpus() German_corpus.load_vocab('./Parameters/German_corpus1k.pt') English_corpus.load_vocab('./Parameters/English_corpus1k.pt') German_vectorizer = WordsToVec(German_corpus, 150) English_vectorizer = WordsToVec(English_corpus, 150) German_vectorizer.load_model_state('./Parameters/German_vectors_150d') English_vectorizer.load_model_state('./Parameters/English_vectors_150d') my_translator = Translator(German_corpus, English_corpus, German_vectorizer, English_vectorizer, dec_GRU_count=2, enc_GRU_count=2, hidden_size=128, use_feedforward=True) # my_translator.train(df, epochs=50, batch_size=32, lr=0.001, lr_reduce=0.1) my_translator.load_model('./Parameters/translator_feedforwardatt_epoch50.pt') my_translator.reinforce_train(df, epochs=50, batch_size=32)
#coding:utf-8 from Translator import Translator # 英日翻訳のテスト en_lines = open('en-test.txt').read().split('\n') epoch_num = 100 for epoch in range(epoch_num): model = Translator() modelfile = "./model/en2ja-" + str(epoch) + ".model" model.load_model(modelfile) for i in range(len(en_lines) - 1): en_words = en_lines[i].lower().split() ja_words = model.test(en_words) print("{0}: {1}".format(epoch, ' '.join(ja_words)))