Example #1
0
parser.add_argument('--epochs', type=int, default=10, help='Number of iterations')

args = parser.parse_args()

print("Begin Reading Corpus Data and Tokenizing")
data_reader = CBOWCorpusReader(args.corpus)
grams = data_reader.get_ngram_words()
words_freq = data_reader.get_words_frequency()
word2idx = data_reader.get_word2idx()
idx2word = data_reader.get_idx2word()
print("End Reading the Data")

args.vocab_size = len(words_freq)
cbow = CBOW(args)
cbow.init_session()
cbow.build()

print("Begin Training")
learning_curve = []

for epoch in range(0, args.epochs):
    error = 0.0
    print(epoch)
    for batch in grams:
        x_input, y_output, x_input_reshape = [], [], []

        for item in batch:
            def get_one_hot(idx):
                one_hot = ([0] * (args.vocab_size + 1))
                one_hot[idx] = 1