from common_train import Trainer from lm_loss import LogLoss from lstm_dataset import S2SDataSet from lstm_graph import BiLSTMEncodeGraph from ndnn.sgd import Adam from vocab_dict import get_dict vocab_dict, idx_dict = get_dict() train_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.train.tsv") dev_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.dev.tsv") test_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.test.tsv") dict_size = len(vocab_dict) hidden_dim = 200 batch_size = 50 trainer = Trainer() graph = BiLSTMEncodeGraph(LogLoss(), Adam(eta=0.001, decay=0.99), dict_size, hidden_dim) trainer.train(idx_dict, 100, 's2s_bilstm', graph, train_ds, dev_ds, test_ds, 50)
from common_train import Trainer from lm_loss import LogLoss from lstm_dataset import S2SDataSet from lstm_graph import LSTMEncodeGraph, BiLSTMEncodeGraph, BowEncodeGraph from ndnn.sgd import Adam from vocab_dict import get_dict vocab_dict, idx_dict = get_dict() train_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.train.tsv") dev_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.dev.tsv") test_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.test.tsv") dict_size = len(vocab_dict) hidden_dim = 200 batch_size = 50 trainer = Trainer() lstm_graph = LSTMEncodeGraph(LogLoss(), Adam(eta=0.001, decay=0.99), dict_size, hidden_dim) trainer.train(idx_dict, 100, 's2s_lstm', lstm_graph, train_ds, dev_ds, test_ds, 50) bilstm_graph = BiLSTMEncodeGraph(LogLoss(), Adam(eta=0.001, decay=0.99), dict_size, hidden_dim) trainer.train(idx_dict, 100, 's2s_bilstm', bilstm_graph, train_ds, dev_ds, test_ds, 50) bow_graph = BowEncodeGraph(LogLoss(), Adam(eta=0.001, decay=0.99), dict_size, hidden_dim) trainer.train(idx_dict, 100, 's2s_bow', bow_graph, train_ds, dev_ds, test_ds, 50)
from common_train import Trainer from lstm_dataset import LSTMDataSet from lstm_graph import LogGraph from ndnn.sgd import Adam from vocab_dict import get_dict vocab_dict, idx_dict = get_dict() train_ds = LSTMDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.lm.train.txt") dev_ds = LSTMDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.lm.dev.txt") test_ds = LSTMDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.lm.test.txt") dict_size = len(vocab_dict) hidden_dim = 200 batch_size = 50 graph = LogGraph(Adam(eta=0.001, decay=0.99), dict_size, hidden_dim) trainer = Trainer() trainer.train(idx_dict, 100, 'lm_logloss', graph, train_ds, dev_ds, test_ds, 50)
from common_train import Trainer from ndnn.rnn.lm_loss import LogLoss from ndnn.rnn.lstm_dataset import S2SDict, S2SDataSet from ndnn.rnn.lstm_graph import BiLSTMDecodeGraph from ndnn.store import ParamStore dict = S2SDict(["data/part.train", "data/whole.test"]) test_ds = S2SDataSet(dict.enc_dict, dict.dec_dict, "data/whole.eval") hidden_dim = 100 batch_size = 50 trainer = Trainer() lstm_graph = BiLSTMDecodeGraph(LogLoss(), len(dict.enc_dict), len(dict.dec_dict), hidden_dim, 10) store = ParamStore("part_part.mdl") lstm_graph.load(store.load()) counter = 0 for batch in test_ds.batches(1): if counter > 10: break counter += 1 lstm_graph.build_graph(batch) lstm_graph.test() print(dict.enc_translate(batch.data[0])) print(dict.dec_translate(lstm_graph.out.value))
from common_train import Trainer from ndnn.rnn.lm_loss import LogLoss from ndnn.rnn.lstm_dataset import S2SDict, S2SDataSet from ndnn.rnn.lstm_graph import BiLSTMEncodeGraph from ndnn.sgd import Adam dict = S2SDict(["data/part.train", "data/whole.test"]) train_ds = S2SDataSet(dict.enc_dict, dict.dec_dict, "data/part.train") test_ds = S2SDataSet(dict.enc_dict, dict.dec_dict, "data/whole.test") hidden_dim = 200 batch_size = 50 trainer = Trainer() lstm_graph = BiLSTMEncodeGraph(LogLoss(), Adam(eta=0.001, decay=0.99), len(dict.enc_dict), len(dict.dec_dict), hidden_dim) trainer.train(100, 'part_whole', lstm_graph, train_ds, test_ds, test_ds, 50)
from common_train import Trainer from lstm_dataset import LSTMDataSet from lstm_graph import HingeGraph from ndnn.sgd import Adam from vocab_dict import get_dict vocab_dict, idx_dict = get_dict() train_ds = LSTMDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.lm.train.txt") dev_ds = LSTMDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.lm.dev.txt") test_ds = LSTMDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.lm.test.txt") dict_size = len(vocab_dict) hidden_dim = 200 batch_size = 50 trainer = Trainer() # Share Embedding sem_graph = HingeGraph(Adam(eta=0.001), dict_size, hidden_dim, -1, False) trainer.train(idx_dict, 100, 'lm_hingeloss_sem', sem_graph, train_ds, dev_ds, test_ds, 50) all_graph = HingeGraph(Adam(eta=0.001), dict_size, hidden_dim, -1, True) trainer.train(idx_dict, 100, 'lm_hingeloss_all', all_graph, train_ds, dev_ds, test_ds, 50) r100_graph = HingeGraph(Adam(eta=0.001), dict_size, hidden_dim, 100, True) trainer.train(idx_dict, 100, 'lm_hingeloss_r100', all_graph, train_ds, dev_ds, test_ds, 50) r10_graph = HingeGraph(Adam(eta=0.001), dict_size, hidden_dim, 10, True) trainer.train(idx_dict, 100, 'lm_hingeloss_r10', all_graph, train_ds, dev_ds, test_ds, 50)
from common_train import Trainer from lm_loss import LogLoss from lstm_dataset import S2SDataSet from lstm_graph import AttentionGraph from ndnn.sgd import Adam from vocab_dict import get_dict vocab_dict, idx_dict = get_dict() train_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.train.tsv") dev_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.dev.tsv") test_ds = S2SDataSet(vocab_dict, idx_dict, "bobsue-data/bobsue.seq2seq.test.tsv") dict_size = len(vocab_dict) hidden_dim = 200 batch_size = 50 trainer = Trainer() attention_graph = AttentionGraph(LogLoss(), Adam(eta=0.001), dict_size, hidden_dim) trainer.train(idx_dict, 100, 's2s_attention', attention_graph, train_ds, dev_ds, test_ds, 50)
from common_train import Trainer from multiline_ds import MultilineDataset from multiline_graph import MultiLSTMEncodeGraph from ndnn.rnn.lm_loss import LogLoss from ndnn.sgd import Adam hidden_dim = 200 num_line = 10 train_ds = MultilineDataset("data/ml.train", num_line) test_ds = MultilineDataset("data/ml.test", num_line) trainer = Trainer() lstm_graph = MultiLSTMEncodeGraph(LogLoss(), Adam(eta=0.001, decay=0.99), len(test_ds.enc_dict), len(test_ds.dec_dict), hidden_dim, 10) trainer.train(100, 'mline', lstm_graph, train_ds, test_ds, test_ds, 1)