예제 #1
0
    def midi_to_token_ids(self, midi_name):
        """
        Helper function to encode midis from a dataset. See
        data_utils.py's encode() for the specifics.
        """
        path = os.path.join(self.data_dir, midi_name)
        try:
            stream = m21.converter.parse(path)
            encoding, measures = encode(stream)

            track_id = self.get_track_id(path)
            track_ids = [track_id] * len(encoding)

            return encoding, measures, track_ids
        except:
            return [[], [], []]
yvocab_size = xvocab_size
emb_dim = 1024

import seq2seq_wrapper

import importlib
importlib.reload(seq2seq_wrapper)

model = seq2seq_wrapper.Seq2Seq(xseq_len=xseq_len,
                                yseq_len=yseq_len,
                                xvocab_size=xvocab_size,
                                yvocab_size=yvocab_size,
                                ckpt_path='ckpt/opensubtitle/',
                                emb_dim=emb_dim,
                                num_layers=3)

sess = model.restore_last_session()

while True:
    query = input('Input:\t')

    if query == 'quit' or query == 'exit':
        exit(0)

    ids = data_utils.encode(sequence=query, lookup=metadata['w2idx'])
    output = model.predict(sess, ids)
    reply = data_utils.decode(sequence=output[0],
                              lookup=metadata['idx2w'],
                              separator=' ')
    print('Output:' + reply)
def respond(msg):
    encoded_msg = data_utils.encode(msg, w2idx, limit['maxq'])
    response = model.predict(sess, encoded_msg)[0]
    return data_utils.decode(response, idx2w)
예제 #4
0
파일: preprocess.py 프로젝트: njucjc/NLP
from data_utils import encode
from loader import load_file_content, dump_to_file

train = load_file_content('data/original/train.txt')
dev = load_file_content('data/original/dev.txt')
train_data = encode(train)
dev_data = encode(dev)

dump_to_file(train_data, 'data/example.train', 'w')
dump_to_file(dev_data, 'data/example.dev', 'w')
dump_to_file(dev_data, 'data/example.test', 'w')